Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как определить что мое окно наверху?


leonidus ©   (2008-06-01 12:23:00) 

Необходимо понять, является ли окно моей программы активным в данный момент, т.е. работает ли с ним пользователь или оно перекрыто другими окнами, как это сделать?


Anatoly Podgoretsky   (2008-06-01 14:49:00) [1]

The GetForegroundWindow function returns the handle of the foreground window (the window with which the user is currently working).


engine   (2008-06-01 14:07:00) [2]

http://delphiworld.narod.ru/base/wm_activate.html


{RASkov}   (2008-06-01 13:40:00) [3]

> [4] leonidus   (01.06.08 13:27)
> то FormActivate все равно не генерируется.

Оно генерируется только в пределах текущего приложения....
Тебе нужно смотреть на свойства OnActivate и OnDeactivate у TApplication'а...


{RASkov}   (2008-06-01 13:40:00) [4]

> Тебе нужно смотреть на свойства OnActivate и OnDeactivate
> у TApplication'а...

Стоп... мыж в винапи :) См [2]


leonidus   (2008-06-01 13:27:00) [5]

engine так не получается, FormActivate срабатывает только один раз при старте программы, и даже если я разворачиваю поверх моего окна окно другой программы и затем опять перехожу в окно моей, то FormActivate все равно не генерируется.


{RASkov}   (2008-06-01 13:24:00) [6]

> ShowMessage('Пользователь работает с программой');

Не факт.... ни [1] ни [2] не факт :)


{RASkov}   (2008-06-01 13:22:00) [7]

GetActiveWindow сравнивай с хэндлом своего окна. Равно - значит твое активно, нет... ну на нет и суда нет...


engine   (2008-06-01 12:29:00) [8]

procedure TForm1.FormActivate(Sender: TObject);
begin
 ShowMessage('Пользователь работает с программой');
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо