Скачать 60.52 Kb.
|
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ КЕМЕРОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ Кафедра ЮНЕСКО по Новым информационным технологиям ПРОГРАММИРОВАНИЕ. COM-ТЕХНОЛОГИИ. ЛАБОРАТОРНАЯ РАБОТА №6 Создание мастера диалогового окна Лабораторный практикум Математический факультет Специальность 010503 – математическое обеспечение и администрирование информационных систем Кемерово, 2008
Создать мастер диалогового окна.
Лабораторная работа направлена на ознакомление с основными характеристиками Microsoft Visual Studio (C++). Требования к результатам выполнения лабораторного практикума:
При составлении и оформлении отчета следует придерживаться рекомендаций, представленных на странице http://unesco.kemsu.ru/student/rule/rule.html.
Создание приложения типа AppWizard. Окно мастера можно рассматривать как разновидность диалогового окна с вкладками. Создайте диалоговое приложение с именем, индивидуальным для каждого студента. Имя описываемого примера: WizApp. Удалите все элементы управления и кнопки , расположенные на заготовке диалогового окна. Щелкните правой кнопкой мыши на заготовке диалогового окна и в проявившемся контекстном меню выберите Properties. Откроется диалоговое окно Dialog Properties. Раскройте вкладку General (Общие свойства) и измените ID: (идентификатор ресурса) на IDD_WIZPAGE1. В текстовое поле Caption введите текст "Окно 1". Откройте вкладку Styles (Стили). В раскрывающемся списке Style: (Стиль) выберите Child (Дочернее окно). Из раскрывающегося списка Border: (Рамка) выберите Thin (Тонкая). Снимите флажок System menu (Системное меню). Щелкните правой кнопкой мыши на идентификаторе ресурса IDD_WIZPAGE1, расположенного в папке Dialog, во вкладке ResourceView окна Workspace. Выберите в раскрывающемся списке Language: (язык), диалогового окна Dialog Properties, язык Russian. В панели инструментов Controls выберите элемент управления Static Text и поместите его на заготовку. Откройте диалоговое окно Static Text Properties и введите в текстовое поле ID: IDD_STATIC, в поле Caption: Статический элемент первого окна. Вызовите мастер ClassWizard нажав на клавиши Ctrl+W. Появится диалоговое окно Adding a Class (Добавление класса). В этом окне сообщается, что идентификатор ресурса IDD_WIZPAGE1 соответствует новому ресурсу и спрашивается, создавать ли для него новый класс или использовать уже созданный. Оставьте установку переключателя в положении Create a new class (Создать новый класс) и нажмите кнопку ОК. Появится диалоговое окно New Class (Новый класс). Введите в текстовое поле Name: идентификатор CWizPage1. В раскрывающемся списке Base class: (Базовый класс) выберите класс CPropertyPage. Нажмите на кнопку ОК. Во вкладке ResourceView окна Workspace щелкните правой кнопкой мыши на папке WizApp Resources (Ресурсы приложения WizApp) и в появившемся контекстном меню выберите команду Insert Dialog (Вставить диалоговое окно). Щелкните на этой заготовке и измените размер диалогового окна так, чтобы он соответствовал размеру диалогового окна первой панели. Размер и положение выделенного элемента управления или диалогового окна отображается в панели состояния. Замените идентификатор ресурса новой заготовки на IDD_WIZPAGE2, а его заголовок на "Окно 2". Повторите все операции произведенные над ресурсом IDD_WIZPAGE1. Создайте еще одну заготовку IDD_WIZPAGE3 и назовите ее "Окно 3". Повторите все операции, произведенные над ресурсами IDD_WIZPAGE1 и IDD_WIZPAGE2. Итак, у Вас должны быть созданы три заготовки IDD_WIZPAGE1, IDD_WIZPAGE2, IDD_WIZPAGE3. Должны быть созданы три класса CWizPage1, CWizPage2, CWizPage3. На каждой заготовке должен стоять статический элемент управления IDD_STATIC. Вызовите ClassWizard. Нажмите на кнопку Add Class ... (Добавить класс). В появившемся контекстном меню выберите команду New... (Новый). На экране появится диалоговое окно New Class. В текстовое поле Name: введите имя класса CWiz, в раскрывающемся списке Base class: выберите класс CPropertySheet. Нажмите на кнопку ОК. Мастер ClassWizard создаст новый класс с именем CWiz. Закройте ClassWizard нажав на кнопку ОК. Раскройте вкладку FileView (Просмотр файлов) окна Workspace. В ней раскройте папку WizApp files (Файлы приложения SheetApp). Откройте папку Header files (Файлы заголовков) и дважды щелкните левой кнопкой мыши по имени файла Wiz.h Откроется окно редактирования файла Wiz.h Перед объявлением класса CWiz вставьте операторы включения файлов заголовков классов вкладок диалогового окна: #include "WizPage1.h" #include "WizPage2.h" #include "WizPage3.h" В раздел // Attributes описания класса CWiz вставьте операторы объявления данных-членов класса, представляющих собой объекты классов вкладок: CWizPage1 m_page1; CWizPage2 m_page2; CWizPage3 m_page3; Во вкладке FileView окна Workspace откройте папку Source files (Файлы реализации) и дважды щелкните левой кнопкой мыши на файле Wiz.cpp В тело функции обоих конструкторов класса CWiz, добавьте операторы включения вкладок в диалоговое окно: Во вкладке FileView окна Workspace щелкните левой кнопкой мыши на файле WizApp.cpp. В теле функции InitInstance замените оператор CWizAppDlg dlg; на оператор: CWiz dlg("Урок № 6 - Создание мастера диалогового окна "); и добавьте оператор dlg.SetWizardMode(); Не забудь в начале файла WizApp.cpp вставить оператор включения файла заголовка класса CWiz: #include "Wiz.h" Во вкладке FileView окна Workspace щелкните левой кнопкой мыши на файле WizApp.cpp. В теле функции InitInstance замените оператор CWizAppDlg dlg; на оператор: CWiz dlg("Урок № 6 - Создание мастера диалогового окна "); и добавьте оператор dlg.SetWizardMode(); Не забудь в начале файла WizApp.cpp вставить оператор включения файла заголовка класса CWiz: #include "Wiz.h" Откройте окно редактирования файла WizPage1.cpp и внесите в его функции изменения, зафиксированные в Листинге 6.1. Листинг 6.1. / Откройте окно редактирования файла WizPage2.cpp и внесите в его функции изменения, зафиксированные в Листинге 6.2. Листинг 6.2. Откройте окно редактирования файла WizPage3.cpp и внесите в его функции изменения, зафиксированные в Листинге 6.3. Листинг 6.3. Сохраните Вашу работу и запустите приложение на исполнение. Появится диалоговое окно мастера. Как видите в диалоговом окне "Окно 1" недоступна кнопка Back (Назад), в диалоговом окне "Окно 3" кнопка Next (Далее), а в диалоговом окне "Окно 2" доступны обе кнопки. Доступность этих кнопок определяется функцией CPropertySheet::SetWizardButtons, которая обычно вызывается из функции CPropertySheet::OnSetActive. Функция SetWizardButtons определяет функцию и внешний вид кнопок диалогового окна мастера. В параметрами этой функции является набор флагов, объединенных функцией логического ИЛИ. Этот набор состоит из следующих флагов: PSWIZB_BACK - отображает и делает доступной кнопку Back. PSWIZB_NEXT - отображает и делает доступной кнопку Next. PSWIZB_FINISH - отображает и делает доступной кнопку Finish. PSWIZB_DISABLEFINISH - делает недоступной кнопку Finish. Флаги PSWIZB_NEXT и PSWIZB_FINISH являются несовместимыми, т.к. относятся к одной и той же физической кнопке. Поэтому окно может содержать или кнопку Next (Далее) или кнопку Finish (Готово), но не обе сразу. Но мастер AppWizard, с помощью маленьких хитростей, содержит и кнопку Next (Далее) и кнопку Finish (Готово). Флаг PSWIZB_DISABLEFINISH может появиться только в комбинации с флагом PSWIZB_FINISH Флаги PSWIZB_NEXT и PSWIZB_FINISH являются несовместимыми, т.к. относятся к одной и той же физической кнопке. Поэтому окно может содержать или кнопку Next (Далее) или кнопку Finish (Готово), но не обе сразу. Но мастер AppWizard, с помощью маленьких хитростей, содержит и кнопку Next (Далее) и кнопку Finish (Готово). Флаг PSWIZB_DISABLEFINISH может появиться только в комбинации с флагом PSWIZB_FINISH.
В отчете следует указать:
|
Российской Федерации Федеральное агентство по образованию Южно-Уральский... Программа предназначена для студентов юургу специальности 040201 «Социология» | Российской Федерации Федеральное агентство по образованию Южно-Уральский... Программа предназначена для студентов юургу специальности 040201 «Социология» | ||
Российской Федерации Федеральное агентство по образованию Южно-Уральский... ... | Российской Федерации Федеральное агентство по образованию Южно-Уральский... Требование к обязательному минимуму содержания дисциплины «Социологическое сопровождение избирательных кампаний» по специальности... | ||
Российской Федерации Федеральное агентство по образованию Южно-Уральский... Требование к обязательному минимуму содержания дисциплины «Социологические проблемы изучения общественного мнения» по специальности... | Российской Федерации Федеральное агентство по образованию Южно-Уральский... Требование к обязательному минимуму содержания дисциплины «Выборочный метод в социологии» по специальности 040201 «Социология» | ||
Российской Федерации Федеральное агентство по образованию Южно-Уральский... ... | Сервер под бухгалтерию Рф федеральное агентство по образованию РФ государственное образовательное учреждение высшего профессионального образования «Саратовский... | ||
Российской Федерации Федеральное агентство по образованию Южно-Уральский... ... | Таганрогский государственный Радиотехнический университет факультет... Программа соответствует федеральному компоненту государственного стандарта основного общего образования по информатике и информационным... | ||
Таганрогский государственный Радиотехнический университет факультет... Программа соответствует федеральному компоненту государственного стандарта основного общего образования по информатике и информационным... | Федеральное агентство по образованию гоу впо «Алтайский государственный... Для специальностей: 080503 «Антикризисное управление», 080109 «Бухгалтерский учет, анализ и аудит», 080504 «Государственное и муниципальное... | ||
Федеральное агентство по образованию Томский государственный педагогический университет Томский государственный педагогический университет совместно с Сибирским нии торфа со расхн, Институтом климатических и экологических... | Учебно-методический комплекс дисциплины культурология федеральное... «Дальневосточный государственный технический университет (двпи им. В. В. Куйбышева)» в г. Петропавловске-Камчатском | ||
Учебно-методический комплекс дисциплины социология федеральное агентство... «Дальневосточный государственный технический университет (двпи им. В. В. Куйбышева)» в г. Петропавловске-Камчатском | Федеральное агентство по образованию московский государственный университет... Рекомендуется для направления подготовки дипломированных специалистов 230200 – Информационные системы |