Автор
|
Тема: Савсем мелочь
|
kreont |
опубликован 21-11-2001 23:49 MSK
Хотелось бы получить обработчик нажатия VK_RETURN в Dialog Based window. Как в настоящем окне сделать я знаю - просто класс CEdit унследовать и в мессадж мап зафигачить эвент KeyDown.Диалог просто ресурс создаёт и у меня кроме IDC_EDIT1 ничё нету. Как сделать что то типа комманд лайн? :-) Да и вообще может CDialog для этих целей не предназначен...... АППИ :) как говорят аборигены у меня на родине
|
DmitryRyvkin
|
опубликован 22-11-2001 00:22 MSK
Самое простое , береш (раз один:)) свой класс CMyEdit : public CEdit обрабатываеш в нем все что угодно, затем лепиш _обычный_ Edit ctrl на диалог, жмеш Ctrl+W, ,вкладка Member Variables, жмеш add, категория Ctrl, и в выпавшем комбо увидиш свой наследованный класс. Все. Только CMyEdit наследуй не ручками а через Insert -> New Class. PS Тут работает Subclassing в MFC
|
purpe
|
опубликован 22-11-2001 09:55 MSK
примерно тоже самое но перехватываются стрелки :) http://www.sources.ru/msdn/howto/q104637.shtml
|
necer
|
опубликован 22-11-2001 10:35 MSK
а если наследовать ручками, то в DoDataExchange надо вписать DDX_Control(pDX, YOUR_CTRL_RESID, m_control); Все. |
kreont
|
опубликован 27-12-2001 20:39 MSK
А как от звукого сигнла избавиться ?.. при нажатии Enter |
ADK
|
опубликован 28-12-2001 08:15 MSK
В плане обработки Enter диалог отличается от обычного окна лишь тем, что система посылает ему WM_COMMAND с кодом ID_OK при нажатии оного. Отсюда, наверное, и плясать надо. |