dred2k

Full Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору mmlm10 Тогда при переходах без поиска глюк будет. Prot_XT Дело тут скорее всего в том, что девки делают автопереход на следующий контрол уже после полной отработки кода события, т.е. в данном случае после обработчика твоего поиска. Наша задача в данном случае - обеспечить завершение обработчика, а уже потом отработать поиск и передать фокус обратно. Посему, предлагаю: 1. В окне делаешь процедуру обработки пользовательского сообщения вида Код: procedure OnMySearch(var AMsg : TMessage) message WM_ON_MY_SEARCH; // Выше определяем константу сообщения const WM_ON_MY_SEARCH = WM_USER + 100; | 2. В теле этой процедуры пишешь свой поиск, в самом конце делаешь AMsg.Done := True (если не путаю, а может и не нужно...) и потом SetFocus нужному компоненту. 3. В обработчике на нажатие просто пишешь Код: PostMessage(Self.Handle, WM_ON_MY_SEARCH, 0, 0); | Т.е. по нажатию Enter мы ставим в очередь окна наше сообщение, что нужен поиск. Обработчик девок (внутренний) завершается, фокус как бы уходит. Наше окно получает сообщение, отрабатывает поиск и фокус возвращается. Вуаля Должно сработать. |