DI_BUTTON описывает кнопку (Push Button).
struct FarDialogItem
{
enum FARDIALOGITEMTYPES Type = DI_BUTTON
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 = надпись на кнопке
};
Внимание!
1.DI_BUTTON имеют значения следующие флаги:
| Флаг | Описание |
|---|---|
| DIF_DEFAULTBUTTON | флаг, означающий, что данный элемент диалога является "элементом по умолчанию" |
| DIF_FOCUS | определяет, что при показе диалога установить клавиатурный фокус ввода на данный элемент |
| DIF_BTNNOCLOSE | не завершать работу диалога при нажатии на кнопку |
| DIF_CENTERGROUP | центрирование идущих подряд кнопок с одинаковой вертикальной позицией (параметр X игнорируется) |
| DIF_NOBRACKETS | показывает заголовок кнопки без скобок |
| DIF_DISABLE | элемент является недоступным |
| DIF_NOFOCUS | управляющий элемент не получает клавиатурный фокус ввода |
| DIF_SETSHIELD | размещает на кнопке аналог "иконки со щитом" Microsoft UAC |
| DIF_SHOWAMPERSAND | показывать в заголовке рамки амперсанд не используя его для определения горячей клавиши |
| Событие | Описание |
|---|---|
| DN_DRAWDLGITEM | начало отрисовки текстовой строки |
| DN_CTLCOLORDLGITEM | запрос цветовых атрибутов для отрисовки;
Param2:
|
| DN_CONTROLINPUT | нажали клавиатурную клавишу или кликнули клавишей мыши |
| DN_HOTKEY | горячая клавиша (Alt+Символ) |
| DN_BTNCLICK | нажата кнопка |
| DN_KILLFOCUS | элемент потерял фокус (при условии, что не используется флаг DIF_NOFOCUS) |
| DN_GOTFOCUS | элемент получил фокус (при условии, что не используется флаг DIF_NOFOCUS) |