powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / OnIdle & Edit
7 сообщений из 7, страница 1 из 1
OnIdle & Edit
    #32665060
Eugenie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
День добрый!

Через определенное время простоя необходимо требовать повторный ввод пароля. Переопределила OnIdle и обрабатываю прошедшее время.
Вопрос в следующем - если фокусом владеет Edit, то событие OnIdle не наступает. Можно ли как-то с этим бороться?
...
Рейтинг: 0 / 0
OnIdle & Edit
    #32665205
bulin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток.

MSDN: CWnd

Запускаем таймер:
SetTimer(UINT nIDEvent, UINT nElapse, void (CALLBACK EXPORT* lpfnTimer)(HWND, UINT, UINT, DWORD) );
callback определеяем как NULL и
отрабатываем сообщение таймера:
OnTimer(UINT nIDEvent)
{
.....
}

Собщение отрабатывается вне зависимости в каком из дочерних контров фокус.
...
Рейтинг: 0 / 0
OnIdle & Edit
    #32665217
Sie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Sie
Гость
msdnThe WM_ENTERIDLE message is sent to the owner window of a modal dialog box or menu that is entering an idle state. A modal dialog box or menu enters an idle state when no messages are waiting in its queue after it has processed one or more previous messages.

msdn так же добавил...wParam
Specifies whether the message is the result of a dialog box or a menu being displayed. This parameter can be one of the following values. Value Meaning
MSGF_DIALOGBOX The system is idle because a dialog box is displayed.
MSGF_MENU The system is idle because a menu is displayed.

то есть я чё-то не пойму... Идл наступает когда окно перекрывается модальным окном или меню.
Причём, сама месага посылается _перекрытому_диалогу_. И сразу, как тока он вычистит очередь сообщений. Через определенное время простоя - это оно имелось ввиду?... Или я чё-то непонимаю...
...
Рейтинг: 0 / 0
OnIdle & Edit
    #32665260
Eugenie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Sie
Пользователь работает с программой - смотрит списки или вводит данные!

1. Если он переключился в другое окно - через дцать минут надо перезапросить пароль.
2. Он отошел от компа вообще, но программа осталась OnTop - - через дцать минут надо перезапросить пароль.

В 1 случае все работает.
Во 2 случае работает все, кроме ситуации, когда фокус находится в Edit.
...
Рейтинг: 0 / 0
OnIdle & Edit
    #32666035
Siebentearbeit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну вообще-то надо пользоваться тем, что предложил bulin...

А пробовали переключаться в другое окно и потом сразу назад, не дожидаясь пока пройдёт таймаут?
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
OnIdle & Edit
    #33303250
Anton M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bulinДоброго времени суток.

MSDN: CWnd

Запускаем таймер:
SetTimer(UINT nIDEvent, UINT nElapse, void (CALLBACK EXPORT* lpfnTimer)(HWND, UINT, UINT, DWORD) );
callback определеяем как NULL и
отрабатываем сообщение таймера:
OnTimer(UINT nIDEvent)
{
.....
}

Собщение отрабатывается вне зависимости в каком из дочерних контров фокус.

А если мне нужно создать два таймера OnTimer будет вызваться по обоим таймерам? Возможно, чтобы вызывался другой метод?
...
Рейтинг: 0 / 0
OnIdle & Edit
    #33303277
Anton M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нашел очень полезнцю ссылку по SetTimer http://infobez.net.ru/f/index.php?action=readv&forum=5&tema=267
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / OnIdle & Edit
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]