клавиатура вместо мыши: KillFocus не вызывается - PullRequest
0 голосов
/ 23 декабря 2010

Когда пользователь хочет закрыть окно MFC, это делается нажатием определенной кнопки, CButton, IDCANCEL, «Отмена».Кнопка отключается, если все обязательные поля заполнены.

Если фокус находится в последнем необходимом окне редактирования, у пользователя есть два способа закрыть окно: либо навести указатель мыши и нажать его, либо просто нажать клавишу возврата.key.

Теперь, если он / она решит закрыть окно с помощью клавиатуры, последний OnKillfocus никогда не вызывается.

Есть ли какие-либо идеи для преодоления этой проблемы, поскольку killfocus важен для конкретногоокно.

Спасибо

1 Ответ

1 голос
/ 23 декабря 2010

Нет способа преодолеть это, и это сделано намеренно. Клавиша «Ввод» закрывает диалог при попадании (в то время как «пробел» будет делать это при отпускании).

Я предлагаю вам изменить код диалога, чтобы уменьшить функциональность KillFocus.

Если речь идет о проверке поля, есть несколько общих шаблонов проектирования для достижения этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...