Как отдать фокус окну

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Cellard
Новичок
Новичок
 
Сообщения: 49
Зарегистрирован: 15.10.2002 (Вт) 22:10
Откуда: Russia

Как отдать фокус окну

Сообщение Cellard » 11.02.2005 (Пт) 12:21

Знаю hwhd. Как этому окну отдать фокус? API, пожалуйста, если есть...
P.S. Наверх его поднимать не надо, оно уже поднято.
Cellard

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 11.02.2005 (Пт) 12:23

SetForegroundWindow
Изображение

Demonx
Бывалый
Бывалый
 
Сообщения: 237
Зарегистрирован: 25.06.2003 (Ср) 0:08
Откуда: Литва/Висагинас

Сообщение Demonx » 11.02.2005 (Пт) 12:31

SendMessage hwnd, WM_SETFOCUS, 0, 0&
Изображение

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 11.02.2005 (Пт) 12:37

WM_SETFOCUS шлётся дочернему окну активного приложения. Оно не активизирует само это приложение.
Изображение

Arcanoid
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 162
Зарегистрирован: 01.01.2005 (Сб) 15:44

Сообщение Arcanoid » 11.02.2005 (Пт) 22:03

Да вроде в юзере32.длл есть и такое: SetWindowFocus(hWnd) или просто SetFocus(hwnd)

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 11.02.2005 (Пт) 22:54

SetWindowFocus - нету. А SetFocus как раз и шлёт WM_SETFOCUS.
При этом обе SetFocus и WM_SETFOCUS работают только внутри одной нити, передать фокус чужому окну ими нельзя.
Изображение

Cellard
Новичок
Новичок
 
Сообщения: 49
Зарегистрирован: 15.10.2002 (Вт) 22:10
Откуда: Russia

Сообщение Cellard » 11.02.2005 (Пт) 23:25

SetForegroundWindow подошел полностью.
Cellard


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 159

    TopList