Здравствуйте, Igor A, Вы писали:
IA>Как обработать нажатие Enter в Edit? Что за стили надо Edit'у присвоить?
ES_WANTRETURN
Здравствуйте, TepMuHyc, Вы писали:
TMH>Здравствуйте, Igor A, Вы писали:
IA>>Как обработать нажатие Enter в Edit? Что за стили надо Edit'у присвоить?
TMH>ES_WANTRETURN
ES_WANTRETURN сработает только в отношении multiline edit'а. В противном случае придется либо ловить сообщение в основном message loop, либо subclass'ить edit (подменять оконную процедуру)
... << RSDN@Home 1.0 beta 6a >>
Здравствуйте, Igor A, Вы писали:
IA>Как обработать нажатие Enter в Edit?
Маленько доработанный пример из MSDN.
Плюс вопрос, а зачем они перед удалением "Remove the subclass from the edit control", из принципа?
WNDPROC wpOrigEditProc;
LRESULT APIENTRY EditBoxProc(
HWND hwndDlg,
UINT uMsg,
WPARAM wParam,
LPARAM lParam)
{
HWND hwndEdit;
switch(uMsg)
{
case WM_INITDIALOG:
// Retrieve the handle to the edit control.
hwndEdit = GetDlgItem(hwndDlg, ID_EDIT);
// Subclass the edit control.
wpOrigEditProc = (WNDPROC) SetWindowLong(hwndEdit,
GWL_WNDPROC, (LONG) EditSubclassProc);
//
// Continue the initialization procedure.
//
return TRUE;
case WM_DESTROY:
// Remove the subclass from the edit control.
SetWindowLong(hwndEdit, GWL_WNDPROC,
(LONG) wpOrigEditProc);
//
// Continue the cleanup procedure.
//
break;
}
return FALSE;
UNREFERENCED_PARAMETER(lParam);
}
// Subclass procedure
LRESULT APIENTRY EditSubclassProc(
HWND hwnd,
UINT uMsg,
WPARAM wParam,
LPARAM lParam)
{
if(WM_KEYUP == uMsg && VK_RETURN == wParam)
// Делай что надо
;
return CallWindowProc(wpOrigEditProc, hwnd, uMsg,
wParam, lParam);
}
... << RSDN@Home 1.0 beta 6a >>
Здравствуйте, Igor A, Вы писали:
IA>Как обработать нажатие Enter в Edit? Что за стили надо Edit'у присвоить?
IA>Спасибо заранее.
А, может, стоит установить для родителя Edit-a горячую клавишу Enter? А обрабатывать можно, если курсор стоит в Edit.
... << RSDN@Home 1.0 beta 6 >>
Поищи здесь (или сразу на MSDN) RegisterHotkey.
Slicer
Здравствуйте, Igor A, Вы писали:
IA>Как обработать нажатие Enter в Edit? Что за стили надо Edit'у присвоить?
IA>Спасибо заранее.
Смотреть
здесь