|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
06.08.2009, 15:50 | #1 |
Старожил
Регистрация: 06.08.2009
Сообщений: 2,992
|
Вопрос по MFC
Мне поручили обновлять довольно большую чужую программу MDI MFC, но, к сожалению, опыта работы с MFC не так много, как хотелось бы.
В программе есть диалоговое окно с настройками и с кнопками IDOK и IDCANCEL. При этом функции, вызываемой при их нажатии я нигде не нашел. MFC автоматически вызывает DoDataExchange() при нажатии OK? И еще вопрос: .NET - это полная замена MFC, или второй еще может пригодиться? |
06.08.2009, 16:07 | #2 |
C++ hater
СтарожилДжуниор
Регистрация: 19.07.2009
Сообщений: 3,333
|
DoDataExchange - виртуальная функция, которая связывает контрол по id с именем, которым ты задал. сам ты ее нигде не вызываешь, она автоматически вызывается через механизм виртуальных функций в недрах мфц.
При нажатии на кнопку Ok скорее всего будет вызываться что то типо OnBtnClickedOk, либо так, как прогер назвал эту функцию. Все обработчики событий ты можешь узреть в макроопределении BEGIN_MESSAGE_MAP, либо открыв class wizard. .NET - замена мфц? а java замена c++? мфц - просто набор классов, .net - это не только свои классы, но так же среда clr, байт код, кросплатформенность и тп. я .net не юзаю, ничего более подробного сказать не могу. а насчет пишет ли кто на мфц - скорее всего поддерживают старые проекты (как я у себя в конторе например, или ты, как я вижу). Не думаю, что имеет смысл начинать новые проекты, используя мфц. пс. советую потренироваться на простейших диалоговых прогах в мфц, потом на sdi, потом уже лезь в mdi
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay
My other car is cdr. Q: Whats the object-oriented way to become wealthy? A: Inheritance |
07.08.2009, 11:08 | #3 |
Старожил
Регистрация: 06.08.2009
Сообщений: 2,992
|
Спасибо.
Все оказалось проще - есть стандартная функция CDialog::OnOK(), которая и вызывает UpdateData(1). Она не была переопределена. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
MFC | Cdevelop | Visual C++ | 4 | 18.03.2009 21:28 |
ODBC и MFC | MadDog__ | Win Api | 0 | 06.02.2009 01:18 |
Проблема с MFC | Nikimax | Visual C++ | 1 | 06.12.2008 22:50 |
Проблема с MFC | zi0n | Общие вопросы C/C++ | 0 | 15.11.2008 23:20 |
MFC | Diman2008 | Visual C++ | 2 | 06.03.2008 16:24 |