Автор Тема: [Элементы GUI] Оптимизировать опрос ячеек GUI  (Прочитано 186 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Firestarter [?]

  • Новичок
  • *
  • Сообщений: 31
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Доброго!

Подскажите плз, как лучше оптимизировать данный скрипт, в частности опрос выбора.

Код: AutoIt [Выделить]
For $numb = 1 to 77
$fan[$numb] = GUICtrlCreateListViewItem($asic, $list)
Next

GUISetState()
Do

Switch GUIGetMsg()
case -3
Exit

case $fan[1]
ShellExecute("1.bat")

case $fan[2]
ShellExecute("2.bat")

case $fan[3]
ShellExecute("3.bat")

;=====Тут вырезан кусок кода=======

case $fan[77]
ShellExecute("77.bat")

EndSwitch

Until 0


Русское сообщество AutoIt

[Элементы GUI] Оптимизировать опрос ячеек GUI
« Отправлен: Май 15, 2019, 08:59:51 »

Оффлайн xXx [?]

  • Осваивающий
  • **
  • Сообщений: 71
  • Репутация: 21
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.x.x
Код: AutoIt [Выделить]
For $numb = 1 to 77
$fan[$numb] = GUICtrlCreateListViewItem($asic, $list)
Next
GUISetState()

Do

$iMSG = GUIGetMsg()

Switch $iMSG
Case -3
Exit

Case $fan[1] To $fan[77]
ShellExecute(($iMSG-$fan[1]+1) & ".bat")

EndSwitch
Until 0

« Последнее редактирование: Май 15, 2019, 11:44:19 от xXx »

Оффлайн Firestarter [?]

  • Новичок
  • *
  • Сообщений: 31

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Код: AutoIt [Выделить]
Case $fan[1] To $fan[77]
ShellExecute(($iMSG-$fan[1]+1) & ".bat")
 


Не пойму, почему я тут не могу свою переменную вставить?
Код: AutoIt [Выделить]
Case $fan[1] To $fan[$max]
ShellExecute(($iMSG-$fan[1]+1) & ".bat")
 

Скрипт просто перестает отрабатывать.

Русское сообщество AutoIt

Re: [Элементы GUI] Оптимизировать опрос ячеек GUI
« Ответ #2 Отправлен: Май 15, 2019, 11:48:31 »

Оффлайн Prog [?]

  • Осваивающий
  • **
  • Сообщений: 325
  • Репутация: 31
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
xXx  [?]
Цитировать
Case $fan[1] To $fan[77]
Это не сработает. Производится сравнение числа в $iMSG с диапазоном чисел ячеек 1 и 77.
Необходим цикл со сравнением каждой ячейки массива.

Оффлайн Firestarter [?]

  • Новичок
  • *
  • Сообщений: 31

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Спасибо, вроде все получилось.
« Последнее редактирование: Май 15, 2019, 13:19:48 от Firestarter »

Русское сообщество AutoIt

Re: [Элементы GUI] Оптимизировать опрос ячеек GUI
« Ответ #4 Отправлен: Май 15, 2019, 12:55:21 »

Оффлайн xXx [?]

  • Осваивающий
  • **
  • Сообщений: 71
  • Репутация: 21
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.x.x
... Это не сработает...
Сработает, если только все элементы данного массива созданы по порядку, т.е. так:
Код: AutoIt [Выделить]
For $numb = 1 to 77
$fan[$numb] = GUICtrlCreateListViewItem($asic, $list)
Next


Русское сообщество AutoIt

Re: [Элементы GUI] Оптимизировать опрос ячеек GUI
« Ответ #5 Отправлен: Май 15, 2019, 14:28:09 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
 Закреплено  Возрастной опрос

Автор f4llen « 1 2 ... 5 6 » Общение

75 Ответов
63493 Просмотров
Последний ответ Январь 11, 2019, 17:52:07
от andrei-s
15 Ответов
8859 Просмотров
Последний ответ Февраль 04, 2011, 14:11:20
от SECTOR
1 Ответов
3624 Просмотров
Последний ответ Май 22, 2011, 21:39:15
от Yashied
1 Ответов
3439 Просмотров
Последний ответ Февраль 19, 2012, 16:49:46
от YOgen
7 Ответов
6352 Просмотров
Последний ответ Сентябрь 23, 2012, 16:15:53
от AZJIO
1 Ответов
2627 Просмотров
Последний ответ Ноябрь 17, 2013, 22:47:12
от sims
6 Ответов
4234 Просмотров
Последний ответ Сентябрь 17, 2014, 16:22:07
от kristow13
0 Ответов
900 Просмотров
Последний ответ Февраль 04, 2015, 10:55:23
от mikzin
0 Ответов
571 Просмотров
Последний ответ Февраль 19, 2015, 22:02:05
от madmasles
0 Ответов
623 Просмотров
Последний ответ Март 14, 2017, 06:07:57
от Pahuchiy