Функция GUICtrlCreateRadio

 ↑  ←  Описание функции


GUICtrlCreateRadio

Создаёт Radio-кнопку (переключатель) в GUI.

GUICtrlCreateRadio ( "text", left, top [, width [, height [, style = -1 [, exStyle = -1 ]]]] )

Параметры

text Текст элемента
left Координата левого края. Если -1 - тогда координата в соответствии с GUICoordMode.
top Координата верхнего края. Если -1 - тогда координата в соответствии с GUICoordMode.
width [необязательный] Ширина элемента (по умолчанию устанавливается по длине текста).
height [необязательный] Высота элемента (по умолчанию устанавливается по высоте текста).
style [необязательный] Стиль элемента. Смотрите Стили элементов GUI в приложении.

-1 - по умолчанию : отсутствует.
принудительный стиль : $BS_AUTORADIOBUTTON и $WS_TABSTOP если первая радиокнопка в группе.
exStyle [необязательный] Расширенный стиль элемента. Смотрите таблицу расширенных стилей.

Возвращаемое значение

Успех:Возвращает идентификатор (controlID) нового элемента.
Ошибка:Возвращает 0.

Примечания

Для получения параметров элемента смотрите GUICtrlRead.
Чтобы установить или изменить параметры элемента смотрите GUICtrlUpdate....

Чтобы объединить стили со стилем по умолчанию используйте BitOR($GUI_SS_DEFAULT_RADIO, новый стиль,...).

Чтобы использовать параметры, указанные выше, вы должны включить в ваш скрипт #include <ButtonConstants.au3>.

По умолчанию стиль изменения размеров $GUI_DOCKHEIGHT (не изменяется высота).

См. также

GUICoordMode (Опция), GUICtrlUpdate..., GUIGetMsg

Пример

#include <GUIConstantsEx.au3>
#include <ButtonConstants.au3>

Local $iRadio1, $iRadio2, $iRadio3, $iRadio4, $iRadio5, $msg, $hGUI
$hGUI = GUICreate("Радио кнопка") ; Создаёт окно в центре экрана

GUICtrlCreateGroup("Радио кнопка с переключением", 10, 10, 230, 66) ; элемент Group группирует радиокнопки
$iRadio1 = GUICtrlCreateRadio("Радио кнопка 1", 20, 25, -1, 20)
$iRadio2 = GUICtrlCreateRadio("Радио кнопка 2", 20, 45, -1, 20)
GUICtrlSetState($iRadio2, $GUI_CHECKED)
GUICtrlCreateGroup("", -99, -99, 1, 1)

GUICtrlCreateGroup("Радио кнопка в виде кнопки с иконкой", 10, 95, 230, 80)
$iRadio3 = GUICtrlCreateRadio("-", 30, 120, 40, 40, $BS_PUSHLIKE + $BS_ICON)
GUICtrlSetImage(-1, "shell32.dll", 22)
GUICtrlSetState(-1, $GUI_CHECKED) ; параметр -1 определяет последнюю использованную переменную

$iRadio4 = GUICtrlCreateRadio("-", 80, 120, 40, 40, $BS_PUSHLIKE + $BS_ICON)
GUICtrlSetImage(-1, "shell32.dll", 23)

$iRadio5 = GUICtrlCreateRadio("-", 130, 120, 40, 40, $BS_PUSHLIKE + $BS_BITMAP)
GUICtrlSetImage(-1, "oemlogo.bmp")
GUICtrlCreateGroup("", -99, -99, 1, 1)

GUISetState() ; показывает созданное окно

; Запускается цикл опроса GUI до тех пор пока окно не будет закрыто
While 1
    $msg = GUIGetMsg()
    Select ; рекомендуется использовать Switch вместо Select
        Case $msg = $GUI_EVENT_CLOSE
            ExitLoop
        Case $msg = $iRadio1 And BitAND(GUICtrlRead($iRadio1), $GUI_CHECKED) = $GUI_CHECKED
            MsgBox(64, 'Информация:', 'В кликнули Радио 1 и этот выбор отмечен визуально.', 0, $hGUI)
        Case $msg = $iRadio2 And BitAND(GUICtrlRead($iRadio2), $GUI_CHECKED) = $GUI_CHECKED
            MsgBox(64, 'Информация:', 'В кликнули Радио 2 и этот выбор отмечен визуально.', 0, $hGUI)
        Case $msg = $iRadio3 And BitAND(GUICtrlRead($iRadio3), $GUI_CHECKED) = $GUI_CHECKED
            MsgBox(64, 'Информация:', 'В кликнули Радио кнопку слева и этот выбор отмечен визуально.', 0, $hGUI)
        Case $msg = $iRadio4 And BitAND(GUICtrlRead($iRadio4), $GUI_CHECKED) = $GUI_CHECKED
            MsgBox(64, 'Информация:', 'В кликнули Радио кнопку в центре и этот выбор отмечен визуально.', 0, $hGUI)
        Case $msg = $iRadio5 And BitAND(GUICtrlRead($iRadio5), $GUI_CHECKED) = $GUI_CHECKED
            MsgBox(64, 'Информация:', 'В кликнули Радио кнопку справа и этот выбор отмечен визуально.', 0, $hGUI)
    EndSelect
WEnd