Советы по Delphi

         

MessageDlg в обработчике OnExit


Я пытаюсь использовать MessageDlg в обработчике OnExit компонента TEdit. При показе диалогового окна пользователь нажимает одну из кнопок, после чего, по идее, должно возникнуть событие OnEnter компонента, но оно не возникает! Если вызов диалога сопровождается комментарием, событие OnEnter инициализируется верно. В любом случае, событие OnExit завершает весь код.

Фактически (в момент показа диалога), фокус имеет поле редактирование, но курсор при этом не выводится. Передавая фокус "вперед" и снова "назад", вы получите желаемый результат. Например: В обработчике события OnExit поля редактирования после вызова MessageDlg попробуйте вызвать следующие функции:

PostMessage(Handle, WM_NEXTDLGCTL, 0, 0) ;
PostMessage(Handle, WM_NEXTDLGCTL, 1, 0) ;

OAmiry/Borland [000573]



Содержание раздела