Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.02.06;
Скачать: [xml.tar.bz2];

Вниз

Как отловить время простоя пользователя?   Найти похожие ветки 

 
Вован_   (2004-01-25 10:37) [0]

Всем привет! Проблема такая. Как сделать так, чтобы при простое пользователя (не нажимает на клавиши, не двигает мышкой над программой и любым из ее окон, или программа свернута) через например 10 минут программа автоматически закрывалась?


 
Юрий Зотов   (2004-01-25 10:51) [1]

type
TForm1 = class(TForm)
Timer1: TTimer; // Interval = 600000
procedure FormCreate((Sender: TObject); // Form1.OnCreate
procedure Timer1Timer(Sender: TObject); // Timer1.OnTimer
private
procedure AppMessage(var Msg: TMsg; var Handled: Boolean);
end;

procedure TForm1.FormCreate((Sender: TObject);
begin
Application.OnMessage := AppMessage
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Application.Terminate
end;

procedure TForm1.AppMessage(var Msg: TMsg; var Handled: Boolean);
begin
with Msg do
if (Message >= WM_KEYFIRST) and (Message <= WM_KEYLAST) or
(Message >= WM_MOUSEFIRST) and (Message <= WM_MOUSELAST)
then begin
Timer1.Enabled := False;
Timer1.Enabled := True
end
end;


 
Вован_   (2004-01-25 11:14) [2]

Работает, но не всегда.
Например, если пользователь оставил активным MainMenu на какой-нибудь форме (вошел в подменю и не выбрал элемент, а просто оставил маркер), тогда программа не выгружается.



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

Форум: "Основная";
Текущий архив: 2004.02.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.028 c
1-16389
Ренат
2004-01-23 16:38
2004.02.06
Динамическое создание TQRDbText в отчете


4-16834
vitalmoya
2003-12-01 23:03
2004.02.06
Название, класа по идентификатору


3-16041
SergP
2004-01-13 09:34
2004.02.06
Будет ли правильно работать такой запрос. Если да, то всегда ли?


1-16456
Галинка
2004-01-28 06:43
2004.02.06
О типах данных в Delphi


14-16731
Nikolai_S
2004-01-16 10:07
2004.02.06
Создание автоматического обновления (патча)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский