Как установить фокус ввода (для Блокнота)?
Не получается передать фокус ввода в Блокнот,
(по нажатию кнопки на своем приложении) -
фокус по прежнему остается на моем приложении.
А делал это так:
HWND hWnd = FindWindow( "Notepad", 0 );
hWnd = FindWindowEx( hWnd, 0, "Edit", 0 );
//SetFocus(hWnd);
SendMessage( hWnd, WM_SETFOCUS, 0, 0 );
Как помышляете, в чем казус?
Заранее благодарствую за совет!
Код:
SendMessage(FindWindow("Notepad", NULL), WM_SETFOCUS, 0, 0);
Для активации окна используйте сообщение WM_ACTIVATE
Вот собственно и всё!
SendMessage( FindWindow( "Notepad", 0 ), WM_SETFOCUS, 0, 0 );
SendMessage(FindWindow( "Notepad", 0 ), WM_ACTIVATE, 0, 0 );
то все равно не получается.
SetActiveWindow, SetForegroundWindow, BringWindowToTop, OpenIcon.
Для активации окна я обычно пишу вот так (хотя, если разорбраться, может быть, можно и по-другому):
Код:
h:=FindWindow('Notepad',nil);
OpenIcon(h);
SetForegroundWindow(h);
OpenIcon(h);
SetForegroundWindow(h);