![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| Тутанхамец |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 612 Регистрация: 10.10.2005 Где: в пирамидЕ! Репутация: нет Всего: 6 |
У меня есть диалоговое окно. Там есть созданное через CreateWindow текстовое поле. Надо бы, чтоб когда я нажимаю "стрелку вправо" фокус переходил на другое текстовое поле. Про TAB_STOP знаю. Вопрос, как поймать нажатие клавиши для Edit?
case WM_CHAR в процедуре диалогового окна не работает. Есть что-нибудь проще, чем задание процедуры окна с помощью SetWindowLong? |
|||
|
||||
| Fixin |
|
|||
![]() Ёжик ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1357 Регистрация: 6.1.2004 Репутация: 8 Всего: 18 |
Проще - не знаю, но ты не то сообщение ловил. Надо WM_KEYDOWN или WM_KEYUP.
ЗЫ: НЕхорошо так делать (елси в едите вводится не один символ) надо же редактировать введенное, а мышкой не всегда удобно. |
|||
|
||||
| Fixin |
|
|||
![]() Ёжик ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1357 Регистрация: 6.1.2004 Репутация: 8 Всего: 18 |
Ну и примерчик, как полагается с отсутствием буквы "а" в расширении
Присоединённый файл ( Кол-во скачиваний: 16 )
Examp.rr 1,64 Kb |
|||
|
||||
| Тутанхамец |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 612 Регистрация: 10.10.2005 Где: в пирамидЕ! Репутация: нет Всего: 6 |
Опять спасибо
Там вводится как раз один символ - либо 1, либо 0. У меня массив из 32-ъ эдитов, которые изображают разрядную сетку для числа float. |
|||
|
||||
| Fixin |
|
|||
![]() Ёжик ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1357 Регистрация: 6.1.2004 Репутация: 8 Всего: 18 |
тогда лучше сделать переход сразу после введения символа
|
|||
|
||||
| Тутанхамец |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 612 Регистрация: 10.10.2005 Где: в пирамидЕ! Репутация: нет Всего: 6 |
Слушай, вот ты в примере делаешь такую штуку:
А что будет, если не вернуть в класс старую процедуру? |
|||
|
||||
| Fixin |
|
|||
![]() Ёжик ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1357 Регистрация: 6.1.2004 Репутация: 8 Всего: 18 |
Да ничего. В принципе, это пережиток вин16, где все было общее (полный социализьм), вот там могли быть глюки, что ты закрыл свою прожку, а поведение субласенного контрола появилось в другом приложении. (правда я сам такого не видел). А теперь, этим делом может заняться система (виндовса).
Еще есть вариант, что в твоем приложении несколько ОКОН (а не диалогов), и в них ты субкласишь элементы управления, при закрытии одного окна, процесс продолжает существовать, и может оказаться что осталась и выделенная память под ту процедуру, на которую ты заменял стандартную, и при жестких требованиях к экономии памяти это может вызвть недовольство. (Пару раз окошко открыл - закрыл, а памяти - тю-тю) |
|||
|
||||
| Тутанхамец |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 612 Регистрация: 10.10.2005 Где: в пирамидЕ! Репутация: нет Всего: 6 |
Ясно. На всякий случай буду возвращать процедуру на место.)
|
|||
|
||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |