Форум: "WinAPI";
Текущий архив: 2006.11.12;
Скачать: [xml.tar.bz2];
ВнизПолучение хендла от окна пославшего сообщение? Найти похожие ветки
← →
GelVit (2006-06-28 11:42) [0]Суть задачи в том, хочу отлавить событие от определенного окна. В случае с SC_CLOSE работает как надо, В SC_MINIMIZE и SC_SIZE грабли...
Получение хендла осуществляю с помощью GetForegroundWindow
Сообственно код:
HCBT_SYSCOMMAND: begin
if (wParam = SC_CLOSE) then
begin
Wnd:=getforegroundwindow;
RWinWnd:= FindWindow("Tdlg_Main", nil);
if ((RWinWnd > 0) and (RWinWnd = Wnd))
begin
// все как нада.... RWinWnd = Wnd
end;
end;
if wParam = SC_MINIMIZE then
begin
Wnd:=getforegroundwindow;
RWinWnd:= FindWindow("Tdlg_Main", nil);
if ((RWinWnd > 0) and (RWinWnd = Wnd)) then
begin
// сюда не попадаем тк RWinWnd <> Wnd
//тоже самое с if wParam = SC_SIZE
end;
← →
Юрий Зотов © (2006-07-02 16:33) [1]Не уверен, но попробуйте:
if wParam and $FFF0 = SC_xxx then ...
← →
Ketmar © (2006-07-02 17:42) [2]хм. не уверен, но (по-моему %-) сообщение о минимизации получает невидимое окно, которое считается главным окном приложения. а вовсе не форма.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2006.11.12;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.044 c