Форум программистов, компьютерный форум CyberForum.ru

Enter в Edit'e - C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.85
Kucher
0 / 0 / 0
Регистрация: 06.10.2009
Сообщений: 8
06.10.2009, 13:21     Enter в Edit'e #1
Мне нужно обработать нажатие Enter в контроле Edit.
Я прочел статью "Как обработать нажатие Enter в edit box'е" (http://www.rsdn.ru/article/qna/controls/editpret.xml)
Вроде бы все понятно, но не работает.
На нажатие Enter'а приложение никак не реагирует. (Делал вариант для MFC, параметр Multiline ставил, Want Return тоже на всякий случай)
В метод-обработчик приложение не заходит (ставил контрольную точку везде ).
Судя по всему класс CEnterEdit и изменен, да только тот Edit который я добавляю на форму не имеет к нему никакого отношения.
Что делать? Хотелось бы разобраться именно с этим вариантом.

И ещё непонятно m_edText - это параметр диалога или переменная привязанная к Edit'у?

Во втором варианте, в обработчик-функцию заходит, но не работает UpdateData();
я просто в шоке, помогите кто-нибудь, а то у мну моск скоро лопнет.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.10.2009, 13:21     Enter в Edit'e
Посмотрите здесь:

Игнорирование Enter/Esc C++
дальше - через enter C++
C++ Отловить нажатие Enter
C++ Как вывести enter в Edit Control
C++ Действие при нажатии Enter
Код Enter C++
C++ Enter = выход из программы
C++ Реакция на enter
c++ завершить цикл клавишей <Enter> C++
Неработает проверка на ввод enter C++
Проверка нажатия enter C++
Решить пример, в котором цифры заменены буквами: "enter + enter = абзац" C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
solar_wind
 Аватар для solar_wind
741 / 732 / 39
Регистрация: 06.07.2009
Сообщений: 2,940
Завершенные тесты: 1
06.10.2009, 13:40     Enter в Edit'e #2
Want Return, если не ошибаюсь, вызывает встроенный обработчик перехода на новую строку, его лучше отключить.
Если вы хотите что бы класс, в котором создан Edit, обрабатывал его события, то нужно установить свойство у Edita WM_NOTIFY

В случае если обработка осуществляется через наследование от CEdit, то WM_NOTIFY должен быть отключен
Kucher
0 / 0 / 0
Регистрация: 06.10.2009
Сообщений: 8
06.10.2009, 16:12  [ТС]     Enter в Edit'e #3
скажите пожалуйста конкретнее, вот я создаю класс в визарде
нужно ли мне automation и что это вообще такое?
базовый класс мне делать edit или диалог?
и я не пойму где поставить свойство WM_NOTIFY, в свойствах Edita ничего похожего нету
забыл написать у с меня vcpp 6.0

Добавлено через 1 час 28 минут
то есть класс от CEdit'a я создал (например как в примере CEnterEdit:CEdit), а как мне теперь добавить контрол на панель диалога чтобы он был объектом класса CEnterEdit, а не CEdit??

И почему-таки может не работать UpdateData();?

Добавлено через 56 минут
все, спасибо, я разобрался
нужно было в ClassWizarde привязать к контролу переменную и там можно выбрать контрол и нужный класс
и хедеры прописать где нада
ура!! )))
Yandex
Объявления
06.10.2009, 16:12     Enter в Edit'e
Ответ Создать тему
Опции темы

Текущее время: 21:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru