У меня есть диалог с CComboBox
в стиле DropList. Я хочу, чтобы он вызывал мою функцию (например, LoadData()
), когда:
- пользователь щелкает элемент в раскрывающемся списке или
- элемент в раскрывающемся списке выделяется (либо при наведении мыши, либо при помощи клавиатуры), и пользователь нажимает клавишу ввода
но НЕ когда пользователь все еще печатает текст в #2.
Вызов LoadData()
в обработчике ON_CBN_SELCHANGE
отлично работает для #1, но для #2 это событие срабатывает при каждом нажатии клавиши, а не только при вводе. Другими словами, если у меня есть элементы со списком:
1
12
123
и я набираю 12
, он вызовет ON_CBN_SELCHANGE
один раз для 1
, один раз для 12
... но на самом деле я пытаюсь набрать 123
, поэтому я не хочу, чтобы эти первые 2 нажатия клавиш приводили к вызовам LoadData()
.
Как правильно это реализовать?