Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.20;
Скачать: CL | DM;

Вниз

как найти handle окна, потерявшего фокус   Найти похожие ветки 

 
Wild Sam   (2003-09-26 15:29) [0]

Здравствуйте! Вопрос таков: как получить handle окна, которое имело фокус до того, как мое окно получило фокус? Спасибо!


 
VMcL ©   (2003-09-26 15:37) [1]

см. сообщение WM_SETFOCUS


 
Игорь Шевченко ©   (2003-09-26 15:39) [2]

или WM_ACTIVATE


 
Wild Sam   (2003-09-26 16:11) [3]

Проблема вот в чем. WM_SETFOCUS мне не подходит... WM_ACTIVATE - подходит, но оно не дает хэндла предыдущего окна (в хелпе так и написано:"...hwndPrevious is the handle of the window being deactivated. This handle can be NULL. "
?????????????


 
Игорь Шевченко ©   (2003-09-26 16:16) [4]

О задаче подробнее, плз


 
clickmaker ©   (2003-09-26 16:20) [5]

А почему WM_SETFOCUS не подходит ?

WM_SETFOCUS
The WM_SETFOCUS message is sent to a window after it has gained the keyboard focus.

WM_SETFOCUS
hwndLoseFocus = (HWND) wParam; // handle to window losing focus


 
Wild Sam   (2003-09-26 16:23) [6]

С удовольствием. Надо сделать окно, которое не отнимает фокус. Если еще подробнее, то в трее висит иконка моей программы. При клике на нее возникает Popup-menu (это не обязательное условие, можно показывать, например и специальную форму), при этом фокус перемещается к моей программе. При исчезновении popup"а фокус должен вернуться туда, где он был. Кроме того, handle окна, потерявшего фокус, нужен и для своих целей...
Спасибо за внимание.


 
Wild Sam   (2003-09-26 16:27) [7]

2 clickmaker. Не срабатывает...
Кроме того, есть подозрение, что в моем случае (см. описание задачи) предыдущим окном будет таск бар...


 
Игорь Шевченко ©   (2003-09-26 16:28) [8]

По клику смотреть GetForegroundWindow не помогает ?


 
Wild Sam   (2003-09-26 16:45) [9]

"По клику смотреть GetForegroundWindow не помогает ?" - возвращает хэндл таскбара...


 
Wild Sam   (2003-09-26 17:02) [10]

Я вот думаю на перемещение мыши над иконкой поставить запоминание текущего окна. Только что-то пока возвращается хэндл моего приложения... Ошибка где-то.


 
clickmaker ©   (2003-09-26 17:41) [11]

Проверил, GetForegorundWindow в ответ на WM_MOUSEMOVE над иконкой дает активное окно


 
Wild Sam   (2003-09-26 17:53) [12]

Блин, а у меня нет...Ну, не буду грешить на глюки компилера, поищу глупую ошибку у себя...



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

Текущий архив: 2003.11.20;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.016 c
1-65859
Ricks
2003-11-09 11:59
2003.11.20
Office11 или ExpressBars Suite v5


3-65795
AndSoft
2003-10-30 13:40
2003.11.20
Помогите разобраться с ошибкой


14-66057
sowell
2003-10-30 10:33
2003.11.20
Как получить сертификат от BrainBench?


1-65878
guest_Dmitry
2003-11-09 07:31
2003.11.20
Edit1...Editx - как обратиться к нужному компоненту?


3-65770
sashag
2003-10-30 13:03
2003.11.20
CrossTab в Interbase