Вниз
Скачать: CL | DM;

ActiveMDIChild и SetFocus   Найти похожие ветки 

← →
Max_   (2003-09-30 15:55) [0]

У меня MDI проект, что-то вроде текстого редактора! Я реализовал поиск по тексту через FindDialog! При каждой попытке поиска я пытаюсь переключиться на форму с RichEdit"ом что-бы показать найденый фрагмент:
(ActiveMDIChild as TForm3).RichEdit1.SetFocus;
Но это не работает! Приходится каждый раз щёлкать по заголовку что-бы увидеть, что он нашёл. Как реализовать авто фокус в MDI?
P.S. В SDI проекте всё прекрасно работает!


← →
tria ©   (2003-09-30 16:07) [1]

Сделай BringToFront а затем SetFocus


← →
Max_   (2003-09-30 16:15) [2]

Да не пашет это вааще!
Я и SetForeGroundWindow делал и BringToFront, а потом и SetFocus!


← →
Max_   (2003-09-30 16:17) [3]

Да не пашет это вааще!
Я и SetForeGroundWindow делал и BringToFront, а потом и SetFocus!


← →
Max_   (2003-09-30 16:42) [4]

Так чего, вариантов не будет как фокус-то передать?


← →
Alex_Raider ©   (2003-09-30 16:44) [5]

будет вариант.
никакой SetFocus не пойдет, так как MDI так работает.
rtfm.


← →
NAlexey ©   (2003-09-30 16:49) [6]

Попробуй так:

SetWindowPos(MDIChild.Handle, FindDialogForm.Handle(или HWND_NOTOPMOST), 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE or SWP_NOACTIVATE);

Да, и кстати ты уверен что когда у тебя окно поиска поверх всех окон ActiveMDIChild у тебя это то что нужно?


← →
tria ©   (2003-09-30 18:56) [7]

Попробуй погасить окно поиска, затем BringToFront,SetFocus а потом снова показать окно поиска. Без окна поиска BringToFront+SetFocus в MDI работает. Сам пробовал.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
1-40337
Tommy
2003-10-01 13:30
2003.10.13
ProcessMessages


1-40470
GreySerg
2003-09-30 20:44
2003.10.13
Как в ListView при редактировании запретить действие ShortCutов ?


14-40622
sancho
2003-09-22 18:30
2003.10.13
Как на человека в инете инфу накопать?


3-40307
NikB
2003-09-22 00:37
2003.10.13
BDE error $210C kto znaet etogo cherta?


14-40633
pasha_golub
2003-09-24 16:33
2003.10.13
Что такое execl?




   Наверх