Карта сайтаСсылкиКонтакты

Передача фокуса при превышении текста TEdit

PDF Печать
Статьи

TEdit имеет такое свойство, как MaxLength, его нужно установить в количество допустимых символов. Когда количество символов превысит значение MaxLength, TEdit посылает сообщение EN_MAXTEXT своему родительскому окну, которое мы будем перехватывать и передавать фокус другому окну.

В определении формы запишем:


Type
  TForm1 = class(TForm)
  { ... }
private
  procedure WMCommand(var Msg: TWMCommand); message WM_COMMAND;
  { ... }
end;

Затем в секции implementation:


procedure TForm1.WMCommand(var Msg: TWMCommand);
begin
   if Msg.NotifyCode = EN_MAXTEXT then
   begin
      PostMessage(Handle, WM_NEXTDLGCTL,0, 0);
      inherited;
   end;
end;

 

Добавить комментарий


Защитный код
Обновить