DI_RADIOBUTTON
Элемент диалога
DI_RADIOBUTTON
описывает селекторную кнопку (Radio Button).
Также он называется кнопкой с зависимой фиксацией. Похож на CheckBox, за исключением того, что, если у первого из несколько идущих подряд подобных элементов
установлен флаг DIF_GROUP, то они являются взаимоисключающими: если одна кнопка включена, другие обязательно выключены.
struct FarDialogItem { enum FARDIALOGITEMTYPES Type = DI_RADIOBUTTON intptr_t X1 = X intptr_t Y1 = Y intptr_t X2 = 0 intptr_t Y2 = Y (равен значению Y1) intptr_t Selected = Selected FARDIALOGITEMFLAGS Flags = Flags const wchar_t *Data = надпись кнопки };
Внимание!
- Приведено схематичное изображение структуры; полное описание структуры см. здесь.
Selected
Определяет состояние элемента - отмечен или нет.
Флаги
Для элемента
DI_RADIOBUTTON
имеют значения следующие флаги:
Флаг | Описание |
---|---|
DIF_DEFAULTBUTTON | флаг, означающий, что данный элемент диалога является "элементом по умолчанию" |
DIF_FOCUS | определяет, что при показе диалога установить клавиатурный фокус ввода на данный элемент |
DIF_GROUP | группировка последовательно объявленных селекторных кнопок (укажите этот флаг для первого элемента в группе) |
DIF_MOVESELECT | изменить выбор внутри группы при изменении фокуса ввода; также элемент будет отображаться без ограничительных круглых скобок (пример - диалог выбора цвета в Far Manager - Options|Colors) |
DIF_CENTERGROUP | центрирование идущих подряд переключателей с одинаковой вертикальной позицией (параметр X игнорируется) |
DIF_DISABLE | элемент является недоступным |
DIF_NOFOCUS | управляющий элемент не получает клавиатурный фокус ввода |
DIF_SHOWAMPERSAND | показывать в заголовке рамки амперсанд не используя его для определения горячей клавиши |
События
Событие | Описание |
---|---|
DN_DRAWDLGITEM | начало отрисовки текстовой строки |
DN_CTLCOLORDLGITEM | запрос цветовых атрибутов для отрисовки; Param2 :
|
DN_HOTKEY | горячая клавиша (Alt+Символ) |
DN_BTNCLICK | нажата кнопка |
DN_CONTROLINPUT | нажали клавиатурную клавишу или кликнули клавишей мыши |
DN_KILLFOCUS | элемент потерял фокус (при условии, что не используется флаг DIF_NOFOCUS) |
DN_GOTFOCUS | элемент получил фокус (при условии, что не используется флаг DIF_NOFOCUS) |
Замечания
Хотя координаты
X2
и Y2
в Dialog API не используется, но для нормальной работы в будущих версиях Far Manager желательно корректно заполнить значения этих полей.
Смотрите также: