Доброго времени суток. Столкнулся с следующей проблемой.
При обработке события
Private Sub Combo1_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
'Some code
End Sub
отрабатывает все-таки и стандартный обработчик контрола ComboBox.
Каким образом отключить его ?
Заранее спасибо.
Здравствуйте, Kross, Вы писали:
K>Доброго времени суток. Столкнулся с следующей проблемой.
K>При обработке события
K>K>Private Sub Combo1_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
K>'Some code
K>End Sub
K>
K>отрабатывает все-таки и стандартный обработчик контрола ComboBox.
K>Каким образом отключить его ?
K>Заранее спасибо.
Сделай у формы KeyPreview = True и Обрабарывай сначала у формы или установи Hook (SetWindowsHook(Ex))
... << RSDN@Home 1.1.3 stable >>
Дело в том , что формы ,как таковой и нет.
Это ActiveX объект , с интерфейсом ComboBox и немного измененным функционалом.
Возможно ли унаследовать от базового класса ComboBox свой класс и переопределить методы ?
Если да , то можно примерчик...
Спасибо
Здравствуйте, Kross, Вы писали:
K>Дело в том , что формы ,как таковой и нет.
K>Это ActiveX объект , с интерфейсом ComboBox и немного измененным функционалом.
K>Возможно ли унаследовать от базового класса ComboBox свой класс и переопределить методы ?
K>Если да , то можно примерчик...
K>Спасибо
Нет. Сабклассинг невозможен... к сожалению... Тогда только Hook причем, скорее всего, из DLL, дабы был глобальным, и из него фильтровать по HWND.
Хотя... Ну у тебя же в ActiveX-е есть форма?? Ну в ней и обрабатывай

просто заранее задай ей свойства...
... << RSDN@Home 1.1.3 stable >>
Здравствуйте, Kross, Вы писали:
K>Доброго времени суток. Столкнулся с следующей проблемой.
K>При обработке события
K>K>Private Sub Combo1_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
K>'Some code
K>End Sub
K>
K>отрабатывает все-таки и стандартный обработчик контрола ComboBox.
K>Каким образом отключить его ?
K>Заранее спасибо.
Попробуй после своей обработки следущее
Private Sub Combo1_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
'Some code
Index = 0
KeyCode = 0
Shift = 0
End Sub