Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Берёте указанную в описании самой функции GUISetOnEvent() встроенную переменную @GUI_CtrlId и пользуете. А там хоть через привязку к кнопкам, хоть через массив, хоть через Switch:
Скрытый текст
Код: Выделить весь код
#include <MsgBoxConstants.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

Opt("GUIOnEventMode", 1)

Local $bFormShow = true
Local $i

$MyForm = GUICreate("My Form", 258, 240)
GUISetOnEvent($GUI_EVENT_CLOSE, "MyFormClose")

For $i = 0 To 5
 	GUICtrlCreateButton("Play " & $i, 20, 20 + $i * 33, 97, 33)
	GUICtrlSetOnEvent(-1, "ButtonPlayClick")
Next

$ButtonCancel = GUICtrlCreateButton("Cancel", 140, 20, 97, 33)
GUICtrlSetOnEvent($ButtonCancel, "ButtonCancelClick")

GUISetState(@SW_SHOW)

While $bFormShow
	Sleep(100)
WEnd

Exit(0)

Func ButtonPlayClick()
	MsgBox($IDOK, "", GUICtrlRead(@GUI_CtrlId))
	Switch GUICtrlRead(@GUI_CtrlId)
		Case "Play 0"

		Case "Play 1"

		Case "Play 2"

		Case "Play 3"

		Case "Play 4"

		Case "Play 5"

	EndSwitch
EndFunc

Func ButtonCancelClick()
	$bFormShow = false
EndFunc

Func MyFormClose()
	$bFormShow = false
EndFunc

Последний раз редактировалось Iska, 06-06-2017 в 21:02. Причина: Описка

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:29, 06-06-2017 | #7