DN_EDITCHANGE
Сообщение
DN_EDITCHANGE
оповещает обработчик об изменении состояния редактируемого элемента диалога - например, ввели символ.
Param1
ID элемента диалога.
Param2
Указатель на структуру FarDialogItem, описывающую изменённый элемент.
Return
В текущем Dialog API результат игнорируется, но для обеспечения работоспособности плагина с будущими версиями Dialog API рекомендуется возвращать:
TRUE
- "подтверждаю изменения"FALSE
- "изменения в окне редактирования не принимаются"
Элементы
Элемент | Описание |
---|---|
DI_COMBOBOX | комбинированный список |
DI_EDIT | строка ввода |
DI_FIXEDIT | поле ввода фиксированного размера |
DI_PSWEDIT | поле ввода пароля |
Замечания
В Dialog API нельзя принудительно изменить состояние элемента, изменяя элементы структуры FarDialogItem.
Пример
... // отобразить копию введённых данных только для чисел if (Msg == DN_EDITCHANGE && Param1 == 2) { FarDialogItem *Item=(FarDialogItem *)Param2; int Len=wcslen(Item->PtrData); for(int I=0; I < Len; ++I) if(!isdigit(Item->PtrData[I])) break; if(I == Len) return FALSE; Info.SendDlgMessage(hDlg, DM_SETTEXTPTR, 3, Item->PtrData); return TRUE; } ...
Смотрите также: