#include <GUIConstantsEx.au3>

Example()

;-------------------------------------------------------------------------------------
; Пример - Нажмите кнопку , чтобы увидеть значение радиокнопки
; Скрипт также проверяет изменение состояния (Закрытое/Свёрнутое/timeouts, и т.д.).
Func Example()
	Local $button_1, $group_1, $iRadio_1, $iRadio_2, $iRadio_3
	Local $iRadioVal1, $msg, $hGui

	Opt("GUICoordMode", 1)
	$hGui = GUICreate("Демонстрация Радио-кнопок", 400, 280)

	; Создание элементов
	$button_1 = GUICtrlCreateButton("Кнопка", 30, 20, 120, 40)
	$group_1 = GUICtrlCreateGroup("Group 1", 30, 90, 165, 160)
	GUIStartGroup()
	$iRadio_1 = GUICtrlCreateRadio("Радио &0", 50, 120, 70, 20)
	$iRadio_2 = GUICtrlCreateRadio("Радио &1", 50, 150, 60, 20)
	$iRadio_3 = GUICtrlCreateRadio("Радио &2", 50, 180, 60, 20)

	; Инициализация переменной, которая будет использована для отслеживания событий GUI
	$iRadioVal1 = 0 ; Принимаем за 0 = первая радиокнопка выбрана, 2 = последняя радиокнопка

	; Показывает GUI
	GUISetState()

	; В этом цикле используются переменные для отслеживания изменений состояния радиокнопок,
	; другой способ заключается в использовании GUICtrlRead(), чтобы читать состояние каждого элемента
	While 1
		$msg = GUIGetMsg()
		Select
			Case $msg = $GUI_EVENT_CLOSE
				MsgBox(0, "", "Диалог был закрыт", 0, $hGui)
				Exit
			Case $msg = $GUI_EVENT_MINIMIZE
				MsgBox(0, "", "Диалог свёрнут", 2, $hGui)
			Case $msg = $GUI_EVENT_MAXIMIZE
				MsgBox(0, "", "Диалог восстановлен", 2, $hGui)

			Case $msg = $button_1
				MsgBox(0, "Текущий выбор", "Радио " & $iRadioVal1, 0, $hGui)

			Case $msg >= $iRadio_1 And $msg <= $iRadio_3
				$iRadioVal1 = $msg - $iRadio_1

		EndSelect
	WEnd
EndFunc