Перемещение оконного фокуса производится по нажатию Tab'а, но Edit Control не обрабатывает табуляцию, т.е. нажатие клавиши Tab если фокус на Едит боксе не приводит ни к чему. Как всё-таки отобрать фокус у Едита?
Вот примеры кода создания контрола и обработка сообщения:
Создание контрола
DWORD style = WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP
| ES_LEFT | ES_AUTOVSCROLL | ES_MULTILINE | ES_WANTRETURN;
_hEdit = CreateWindow("edit", NULL, style,
0, 0, 0, 0,
hWnd, (HMENU)(INT_PTR)ID, hInst, NULL);
Обработка сообщений
while (GetMessage(&msg, NULL, 0, 0))
{
if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg))
{
if ( !IsDialogMessage(hWind, &msg) )
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
}
Здравствуйте, Henry Twilight, Вы писали:
HT>Перемещение оконного фокуса производится по нажатию Tab'а, но Edit Control не обрабатывает табуляцию, т.е. нажатие клавиши Tab если фокус на Едит боксе не приводит ни к чему. Как всё-таки отобрать фокус у Едита?
HT>Вот примеры кода создания контрола и обработка сообщения:
HT>Создание контрола
HT>[ccode]
HT> DWORD style = WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP
HT> | ES_LEFT | ES_AUTOVSCROLL | ES_MULTILINE | ES_WANTRETURN;
А чего вы ожидали при ES_MULTILINE (да без сабклассинга) ??
Надо бы почитывать ответы на свои же вопросы (см.
http://rsdn.ru/Forum/Message.aspx?mid=1321855&all=1Автор:
Дата: 11.08.05
) ...
Здравствуйте, kero, Вы писали:
K>Здравствуйте, Henry Twilight, Вы писали:
HT>>Перемещение оконного фокуса производится по нажатию Tab'а, но Edit Control не обрабатывает табуляцию, т.е. нажатие клавиши Tab если фокус на Едит боксе не приводит ни к чему. Как всё-таки отобрать фокус у Едита?
HT>>Вот примеры кода создания контрола и обработка сообщения:
HT>>Создание контрола
HT>>[ccode]
HT>> DWORD style = WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP
HT>> | ES_LEFT | ES_AUTOVSCROLL | ES_MULTILINE | ES_WANTRETURN;
K>А чего вы ожидали при ES_MULTILINE (да без сабклассинга) ??
Санта Клауса. Сабклассинг там есть, но что конкретно нужно для данной фичи непонятно.
K>Надо бы почитывать ответы на свои же вопросы (см. http://rsdn.ru/Forum/Message.aspx?mid=1321855&all=1Автор:
Дата: 11.08.05
) ...
Иш ты, аццкий программер
Ответы на свои вопросы читаю внимательно. В одном из Ваших ответов был приведен пример приложения, в котором была реализована необходимая мне функциональность. НО ES_MULTILINE в моем приложении НЕОБХОДИМ. Без него и у меня всё работает.