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

Вниз

Вот такой вопросец ... надо ловить события...   Найти похожие ветки 

 
AM   (2002-10-08 12:34) [0]

Доброго времени суток!
Попробую объяснить задачу:
Пишется программа, и там поле каждого начала бездействия в ней по таймеру через 1 мин. надо чтобы программа выполняла определенную задачу. Это похоже на запуск ScreenSaver-а после бездействия компьютера, но тут надо не бездействие компьютера, а именно бездействие в данной программе. Если пользователь в это время работает в другой программе - это тоже считаеся бездействием.

Как это реализовать? Я думаю так, что надо каждый раз после какого-нибудь действия в программе запускать заного таймер (с периодом 1 мин.). Но как ловить все события данной программы? Все удары клавиатуры по любым формам и все клики и движения мыши по поверхности каждой формы. Неужели это надо делать для каждой формы отдельно?
Если у кого-нибудь есть соображения - буду благодарен.


 
Skier ©   (2002-10-08 12:35) [1]

>AM
TApplication.OnIdle ?


 
AM   (2002-10-08 12:53) [2]

Из HELP-а по TApplication.OnIdle:

Occurs when an application becomes idle.

А можно поподробней, если не сложно конечно...
И где этот idle(ожидание) ловить? На каждой форме?


 
MBo ©   (2002-10-08 12:58) [3]

в хелпе по TApplication есть пример для какого-то из его событий


 
REA   (2002-10-08 13:14) [4]

Компонент есть TApplicationEvent или что-то в этом роде не помню с какого Delphi начиная и не знаю что он делает. Но посмотреть наверно стоит.


 
KSergey ©   (2002-10-08 13:55) [5]

Может посадить таймер (запуск) на Application.OnDeactivate?
А к событиям приложения можно получить доступ через компонент TApplicationEvent, как верно указал REA, на любой из форм.


 
AM   (2002-10-08 14:58) [6]

Придется переходить на D6, так как ни D4 ни в D5 такого компанента - TApplicationEvent - нет...

всем спасибо за предложения!


 
qube ©   (2002-10-08 15:47) [7]

Не надо никуда переходить.


procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnIdle := MyIdleHandler;
end;

А TApplicationEvents всего-то позволяет в коде ничего такого не писать, а привычно щелкать в design-time.


 
AM   (2002-10-08 15:56) [8]

>>qube © (08.10.02 15:47)

спасибо, вроде что-то начало получатся...



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

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

Наверх




Память: 0.48 MB
Время: 0.017 c
1-56221
Anar
2002-10-07 19:47
2002.10.17
MP3


14-56273
Viktor Kushnir
2002-09-23 09:10
2002.10.17
Перепись населения Дубль2


3-55995
Nurba
2002-09-26 11:38
2002.10.17
Как осуществить поиск данных в базе?


1-56204
Just programmer
2002-10-07 16:39
2002.10.17
Прорисовка элементов спика


14-56325
lak_b
2002-09-25 11:15
2002.10.17
Помогите найти хорошую программку по администрированию IB