DI_EDIT
Элемент диалога DI_EDIT описывает поле ввода.
struct FarDialogItem
{
int Type = DI_EDIT
int X1 = X1
int Y1 = Y
int X2 = X2
int Y2 = Y (равен значению Y1)
int Focus = Focus
char *History = History
DWORD Flags = Flags
int DefaultButton = DefaultButton
union {
char Data[512]; = редактируемый текст (без флага DIF_VAREDIT)
struct {
DWORD PtrFlags; = дополнительные флаги (в Dialog API 1.0 не используется)
int PtrLength; = размер данных, на которые указывает PtrData
char *PtrData; = указатель на пользовательский буфер редактирования
char PtrTail[1];= "остаток" - доступ к оставшейся части Data
} Ptr; = редактируемый текст (с флагом DIF_VAREDIT)
};
};
Внимание!
- Приведено схематичное изображение структуры; полное описание структуры см. здесь.
Focus
Определяет имеет ли поле ввода клавиатурный фокус ввода.
History
Адрес текстовой строки, которая будет использоваться как внутреннее название
истории редактирования (см. также флаг
DIF_HISTORY).
Если значение = NULL, то поле ввода не имеет истории.
Флаги
Для элемента
DI_EDIT имеют значения следующие флаги:
| Флаг | Описание |
| DIF_EDITOR |
Последовательно определенные поля ввода группируются в редактор с возможностью вставки и удаления строк.
|
| DIF_HISTORY |
Позволяет вести историю редактирования для поля ввода.
|
| DIF_MANUALADDHISTORY |
Строка для истории редактирования не будет автоматически добавляться в историю по завершению работы диалога.
|
| DIF_USELASTHISTORY |
Начальное значение берется из истории.
|
| DIF_EDITEXPAND |
"Расширять" переменные среды.
|
| DIF_DISABLE |
Элемент является недоступным.
|
| DIF_READONLY |
Переводит строки редактирования в состояние "только для чтения"
|
| DIF_SELECTONENTRY |
Выделить редактируемый текст при получении фокуса ввода.
|
| DIF_NOFOCUS |
Управляющий элемент не получает клавиатурный фокус ввода.
|
| DIF_VAREDIT |
Использовать указатель на собственный буфер редактирования (FarDialogItem.Ptr.*)
вместо FarDialogItem.Data.
|
События
Смотрите также: