Закрыть Приложение При Бездействии

  • Автор темы Автор темы Lomanu4
  • Дата начала Дата начала

Lomanu4

Команда форума
Администратор
Ofline
Поставленную задачу мы разобьем на две более простые:

  1. Написание функции определения времени простоя.
  2. Закрытие формы, если бездействие продолжалось более определенного времени.
Функция определения времени простоя приложения.
Код будет не сложный, никаких параметров передавать не нужно, на выходе получим время простоя в секундах.
Код:
function SecondsIdle: DWord;
var
liInfo: TLastInputInfo;
begin
liInfo.cbSize := SizeOf(TLastInputInfo);
GetLastInputInfo(liInfo);
Result := (GetTickCount - liInfo.dwTime) div 1000;
end;
Закрыть форму при простое приложения.
Теперь, мы должны добавить на форму компонент Timer и по событию OnTimer будем проверять: если временной порог превышен - закрываем приложение.
Код:
procedure TFmMAIN.Timer1Timer(Sender: TObject);
var
t: Integer;
begin
t := StrToInt(Format('%d', [UUser.SecondsIdle]));
if t >= 15 then // Тут нужно указать количество секунд до закрытия
Close;
end;
 
Последнее редактирование:
Назад
Сверху Снизу