Что нового

Очень нужна помощь в определении нажатой кнопки

neobi

Новичок
Сообщения
25
Репутация
1
Очень нужна помощь как можно определить какая из кнопок нажата (их всегда разное количество от 1 до 1000) делал

Код:
for $i=0 to UBount($array_bootom) step 1
     ...Тут определял нажата ли кнопка из масива кнопок $array_bootom[$i]
next


Можно ли както подругому делать опрос громадного количества кнопок, ато после моих действий программа тормозит в обработке тоесть если ещё добавить обработку события на закрытие то просто напросто несрабатывает и приходится очень долго и нудно клацать закрыть чтобы оно сработало ....
Зарание спасибо всем откликнувшимся
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
neobi,
Мне трудно понять, зачем может понадобиться 1000 кнопок. :smile:
Попробуйте так.
Код:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

$iButtons = Random(10, 30, 1)

GUICreate('Test', 170, 50 + $iButtons * 25)
$nLabel = GUICtrlCreateLabel('Buttons: ' & $iButtons, 10, 20 + $iButtons * 25, 150, 20)
Dim $aBut[$iButtons + $nLabel + 1][2] = [[$iButtons + $nLabel, $nLabel + 1]]

For $i = $aBut[0][1] To $aBut[0][0]
	$aBut[$i][1] = 'Button ' & $i - $aBut[0][1] + 1
	$aBut[$i][0] = GUICtrlCreateButton($aBut[$i][1], 35, 10 + ($i - $aBut[0][1]) * 25, 100, 20)
Next
GUISetState()
While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $aBut[$aBut[0][1]][0] To $aBut[$aBut[0][0]][0]
			MsgBox(64, 'Info', 'Click button: ' & $aBut[$nMsg][1])
	EndSwitch
WEnd
 
Автор
N

neobi

Новичок
Сообщения
25
Репутация
1
Всё всем спасибо разобрался ....
 
Верх