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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 5.00
kili
0 / 0 / 0
Регистрация: 08.01.2010
Сообщений: 11
#1

Проблема с методом OnOk для диалогового окна - C++

28.11.2011, 15:38. Просмотров 1029. Ответов 5
Метки нет (Все метки)

Привет всем.
Метод OnOk для диалогового окна свой радной. Я использовала OK для вызыва другого диалогового окна который содержит кнопки OK и Cancel. Хотела чтоб OK закрывал главное окно программы, а Cancel не делал нечего(кроме отмены вызванного окна).
Увы результат только об ошибки в коде со стораны комплятора. Может подскажети как пройти?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.11.2011, 15:38     Проблема с методом OnOk для диалогового окна
Посмотрите здесь:

C++ передать значение из одного поля диалогового окна в другое поле
C++ Создание диалогового окна в Dev-C++
C++ Проблема с классом для линейного списка
знак для Float (точка и запятая) проблема C++
Создание окна для программы C++
C++ Проблема с методом класса(наверное)
C++ CDocument::OnSaveDocument указать фильтр для диалогового окна сохранения файла
C++ Проблема с циклами для нахождения среднего бала.
Как выводить графику во фрагменте диалогового окна? C++
Изменение ProgressBar диалогового окна из любого места C++
C++ проблема с методом double to string

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
boombastik
7 / 7 / 0
Регистрация: 13.02.2007
Сообщений: 1,255
29.11.2011, 02:55     Проблема с методом OnOk для диалогового окна #2
эх Кили, Кили, будешь смеятся, но у меня это получилось в 5 строчек кода, из них 2 строчки - это открывающая и открывающая скобки.

Итак, второй диалог называется CAnotherDlg, без изменений в обработчиках OnOK и OnCancel. Вот код обработчика OnOk основного диалога (создался автоматически, когда я дважды нажал на кнопку OK расположенную на диалоге в редакторе ресурсов):
Код
void COkDialogDlg::OnBnClickedOk()
{
	CAnotherDlg dlg;
	if (dlg.DoModal() == IDOK)
	{
		EndDialog(IDOK);
	}
}
Удачи,
Владимир
boombastik
7 / 7 / 0
Регистрация: 13.02.2007
Сообщений: 1,255
29.11.2011, 03:02     Проблема с методом OnOk для диалогового окна #3
P.S. этот же код можно поместить в перегруженную функцию OnOK, главное - не вызывать родительский метод, реализованный в классе CDialog, потому как он закрывает диалог.

Код
void COkDialogDlg::OnOK()
{
	CAnotherDlg dlg;
	if (dlg.DoModal() == IDOK)
	{
		EndDialog(IDOK);
	}
	//CDialog::OnOK();
}
kili
0 / 0 / 0
Регистрация: 08.01.2010
Сообщений: 11
29.11.2011, 09:15  [ТС]     Проблема с методом OnOk для диалогового окна #4
Добрый день Владимир. Я тоже писала и так и сяк. Вот только комплятор меня достал этим сообщением
warning C4652: compiler option ''Generate Browser Info'' inconsistent with precompiled header; current command-line option will override that defined in the precompiled header
Linking...

BOS.exe - 0 error(s), 1 warning(s)
boombastik
7 / 7 / 0
Регистрация: 13.02.2007
Сообщений: 1,255
29.11.2011, 12:02     Проблема с методом OnOk для диалогового окна #5
отправь проект на мой e-mail, если там нет ничего секретного, я посмотрю сегодня вечером (e-mail указан у меня в профайле), возможно проблема совсем в другом
Messir
Сообщений: n/a
30.11.2011, 17:56     Проблема с методом OnOk для диалогового окна #6
warning C4652: compiler option ''''Generate Browser Info'''' inconsistent with precompiled header; current command-line option will override that defined in the precompiled header
Linking...
[/quote]
Ну, тут ничего страшного нету.
Чтобы избавиться - можно либо выключить Precompiled Headers, либо покопаться в настройках проекта и изменить параметр Generate Browser Info.
Yandex
Объявления
30.11.2011, 17:56     Проблема с методом OnOk для диалогового окна
Ответ Создать тему
Опции темы

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