struct FarDialogItem
{
int Type = DI_PSWEDIT
int X1 = X1
int Y1 = Y
int X2 = X2
int Y2 = Y (равен значению Y1)
int Focus = Focus
int Selected = 0
DWORD Flags = Flags
int DefaultButton = DefaultButton
char Data[512] = редактируемый текст
};
Внимание!
| Флаг | Описание |
|---|---|
| DIF_DISABLE | Элемент является недоступным. |
| DIF_READONLY | Переводит строки редактирования в состояние "только для чтения" |
| DIF_SELECTONENTRY | Выделить редактируемый текст при получении фокуса ввода. |
| DIF_NOFOCUS | Управляющий элемент не получает клавиатурный фокус ввода. |
| Событие | Описание |
|---|---|
| DN_DRAWDLGITEM | начало отрисовки текстовой строки |
| DN_CTLCOLORDLGITEM | запрос цветовых атрибутов для отрисовки; Param2:
LoWord LoByte - редактируемый текст
(COL_WARNDIALOGEDIT или COL_DIALOGEDIT)
LoWord HiByte - выделенный текст
(COL_DIALOGEDITSELECTED)
HiWord LoByte - неизмененный текст (UnChanched)
(COL_DIALOGEDITUNCHANGED)
HiWord HiByte - 0 (не используется)
|
| DN_KEY | нажали клавишу. |
| DN_MOUSECLICK | "кликнули" клавишей мыши |
| DN_EDITCHANGE | текст изменен |
| DN_KILLFOCUS | элемент потерял фокус (при условии, что не используется флаг DIF_NOFOCUS). |
| DN_GOTFOCUS | элемент получил фокус (при условии, что не используется флаг DIF_NOFOCUS). |
Элемент DI_PSWEDIT позволяет только вставлять текст в поле редактирования. Копирование текста в буфер обмена (Ctrl-Ins или Ctrl-C) для данного элемента не поддерживаются.