Daan |
Отправлено: 15.07.2004, 10:42 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 62
|
Привет!!!
У ме такой вопрос как можно определить время бездействия пользователя... То есть какое время пользователь не трогал мышь и клавиатуру. У ме есть подозрение что надо достать виндовский параметр(который с сохраненив экрана)...
Заранее благодарен |
|
Gedeon |
Отправлено: 15.07.2004, 11:15 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
У меня когда была такая задача, в МСДН ничего не нарыл, поставил хук и обнулял с него прошедшее время, м.б. я не нашел, что искал, если кто знает поделитесь.
|
|
Nick |
Отправлено: 15.07.2004, 16:05 |
|
Машинист паровоза
Группа: Участник
Сообщений: 247
|
Посадил на главную форму
ApplicationEvents
// обработка мыши над формой
void __fastcall TFormMain::ApplicationEvents1Message(tagMSG &Msg,
bool &Handled)
{
if ( Msg.message == WM_MOUSEMOVE ) SecondDelay = 0;
// SecondDelay = 0;
}
// обработка нажатия клавиатуры при активном приложении
void __fastcall TFormMain::ApplicationEvents1ShortCut(TWMKey &Msg,
bool &Handled)
{
SecondDelay = 0;
}
еще таймер
и при определенном значении SecondDelay вылет из проги без запросов или блокировка для ввода пароля.
только надо во время долгих расчетов таймер отключать или
SecondDelay = 0;
|
|
PeroManiak |
Отправлено: 16.07.2004, 00:11 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 71
|
А еще можно через GetCursorPos. Лично мое ИМХО: рабоать без мыши можно только при очень большом тепении:), поэтому смотришь делта D — расстояние пробега, D=sqrt((x-x0)^2+(y-y0)^2), мышь может сама "сдвинуться", если она птическая, поэтому просто говоришь, что юзер ничего не трогает, пока D до полной остановки не будет типа 2уе. У меня такая фича работала.
|
|
Samual |
Отправлено: 17.07.2004, 14:10 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 39
|
Вот вам ответ: см. аттач. Там все написано
|
|