** FoxVID |
Отправлено: 06.03.2005, 13:32 |
|
Не зарегистрирован
|
Подскажите пожалуйста, как из программы определить время простоя компьютера, т.е. время, в течение которого пользователь не трогал клавиатуру и не двигал мышкой? |
|
Admin |
Отправлено: 06.03.2005, 22:44 |
|
Владимир
Группа: Администратор
Сообщений: 1190
|
Боюсь что это разные понятия — простой компьютера и
нажатие клавиш и движение мышкой.
Если только движение мышкой и нажатие клавиатуры -
просто в обработчике нажатия клавиши или движения мыши
запоминайте время движения, а при наступлении следующего
нажатия/движения — вычитайте из предыдущего. Только установите
минимальный промежуток, который не надо учитывать, например,
менее 5 сек или менее 1 мин — это на ваше усмотрение.
А если речь идет о простое компьютера — это событие — простой компьютера — назывется Application->OnIdle() и в этом обработчике
можете выполнять необходимые действия. (также запоминать -
вычислять время)
Это что касается работы с вашей программой, а если вообще
с компьтером — наверное надо ставить хук на события мыши и
клавиатуры и обрабатывать также эти события там.
Отредактировано Admin — 06/03/2005, 22:47
|
|
FoxVID |
Отправлено: 08.03.2005, 10:58 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 29
|
Мне нужно определять время неактивности пользователя за компьютером. Кто-нибудь может подсказать как это реализовать? |
|
Gedeon |
Отправлено: 09.03.2005, 12:34 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
Когда-то интересно было, пытался определить сколько времени до включения скрин-сэйвера, так и не нашел.
Глобальный хук на клаву и крысу и делать как посоветовал Admin, дороговато правда хук на такое дело, но больше ниче пока в голову не приходит.
|
|
AVC |
Отправлено: 09.03.2005, 12:48 |
|
Ветеран
Группа: Модератор
Сообщений: 1583
|
QUOTE |
Мне нужно определять время неактивности пользователя за компьютером
|
Сначала нужно определить что такое "время неактивности пользователя". Лично меня, например, страшно раздражает когда при чтении с экрана (особенно сложного текста) срабатывает скринсэйвер настроенный на малое время — он, видите ли, посчитал что я неактивен.
А для отслеживания ненажатия клавиатуры или нетрогания мыша глобальный хук (см. предыдущие посты).
|
|
xTrim |
Отправлено: 09.03.2005, 13:59 |
|
Машинист паровоза
Группа: Участник
Сообщений: 208
|
Вот тут накидал примерчик со скринсейвером. не отслеживает правда вращение мышиного колеса, а так сойдет для начала
|
|
FoxVID |
Отправлено: 14.03.2005, 10:13 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 29
|
xTrim, большое спасибо!
Отредактировано FoxVID — 14/03/2005, 10:22 |
|