Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблема с фокусом [D7, XP]


AlexanderMS ©   (2006-05-07 19:41:00) 

Проблема в следующем. Отображено 2 формы: основная и окно поиска (собственное, а не FindDialog). Когда фрагмент найден, фокус перемещается с окна поиска на основное, а именно на RichEdit. В этом случае кнопка на окне поиска (с Default = true) по клавише Enter не доступна, приходится на форму мышкой щёлкать, а иначе происходит редактирование RichEdit. Подскажите, пожалуйста, как решить эту проблему?


ЛшдлуттнСфе   (2006-05-07 21:03:00) [1]


> P.S. ЛшдлуттнСфе = KilkennyCat, я так понимаю.


Да.


AlexanderMS   (2006-05-07 20:47:00) [2]


> ЛшдлуттнСфе   (07.05.06 20:37) [6]


Спасибо. Я предпочту простой.

P.S. ЛшдлуттнСфе = KilkennyCat, я так понимаю.


ЛшдлуттнСфе   (2006-05-07 20:37:00) [3]

А, кажется я понял.
При потери фокуса, ричедит действительно скрывает выделенное (или сбрасывает совсем, не проверял).
В этом случае, возможно два варианта:
сложный: воспользоваться возможностью атрибутов текста и поддержать выделение.
простой: перехватить нажатие клавиши в ричедите непосредственно.


Leonid Troyanovsky   (2006-05-07 20:34:00) [4]


> AlexanderMS ©   (07.05.06 20:27) [3]

> Если не перемещать, то не видно выделение фрагмента в RichEdit.


HideSelection?

--
Regards, LVT.


ЛшдлуттнСфе   (2006-05-07 20:33:00) [5]

после отработки выделения верните фокус кнопке.
Button1.SetFocus;


AlexanderMS   (2006-05-07 20:27:00) [6]


> Не перемещать фокус на RichEdit?

Если не перемещать, то не видно выделение фрагмента в RichEdit.


> TForm.Activate;
> TForm.SetFocus;


Которая? В любом случае не получается.


Мефисто   (2006-05-07 19:50:00) [7]

По завершении поиска:

TForm.Activate;
TForm.SetFocus;

?


Leonid Troyanovsky   (2006-05-07 19:47:00) [8]


> AlexanderMS ©   (07.05.06 19:41)  

>  Подскажите, пожалуйста, как решить эту проблему?


Не перемещать фокус на RichEdit?

--
Regards, LVT.


Наверх

Титульная страница Поиск, карта сайта Написать письмо