1.59M

Добавление новых форм к проекту

1.

Добавление новых форм
к проекту

2.

Добавление новой формы
• открыть контекстное меню проекта Solution
Explorer, щелкнув по строке Header Files,
• выбрать пункт Add/New Item (добавить новый
элемент).
• то же самое можно сделать и по опции Project
главного меню.
• В открывшемся диалоговом окне
– выбрать позицию Windows Form,
– задать имя новой формы,
– нажать кнопку Add.

3.

Добавление новой формы

4.

Главная форма
1. Этой форме передается управление в начале
выполнения приложения.
2. Закрытие пользователем главной формы
означает завершение выполнения приложения.
3. Главная форма, как и любая другая, может быть
спроектирована невидимой, но если все
остальные формы закрыты, она в любом случае
станет видимой (иначе пользователь не сможет
работать с приложением).

5.

Рекомендации
• Главной в приложении может быть вовсе не та
форма, которая спроектирована первой.
• В общем случае не рекомендуется все формы
создавать автоматически, т.к. в приложении
могут быть предусмотрены формы, которые
требуются далеко не в каждом сеансе работы
с приложением.

6.

Как форму сделать главной
1. Открыть контекстное меню проекта Solution
Explorer и выбрать опцию Properties.
Откроется диалоговое окно Property Pages.

7.

Как сделать форму главной
2. В этом окне слева выбрать папку
General и в окне справа из
выпадающего меню Startup Object
выбрать стартовую форму.
Для VC++ Express Edition это сделать
невозможно.

8.

Главная форма
• Статус главной имеет форма, с которой был
связан проект при его создании.
• Эта форма первой загружается и выполняется
после того, как проект откомпилирован и
запущен на выполнение.
• Если в проекте много форм, то из главной
формы можно организовывать вызов на
выполнение остальных форм (а можно из каждой
формы вызывать любую другую).
– Эта задача решается с помощью обработчиков кнопок
вызова конкретных форм.

9.

Режимы вызова формы
• Модальный: метод ShowDialog()
• Обычный: метод Show()

10.

При создании формы
1. Создание формы и всех управляемых ей
компонентов с помощью конструктора.
2. Событие Shown: форма становится видимой.
3. Управление передается данной форме: событие
Activated.
4. Событие Enter: фокус передается первому
компоненту в последовательности табуляции.
5. Переустанавливается размер формы (событие
Resize).
6. Прорисовка изображения формы: событие Paint.
Все события (кроме срабатывания конструктора) могут
повторяться неоднократно.

11.

Пример
• Добавить в приложение «Блокнот»
форму с информацией «О программе»

12.

Выбор пункта меню
Обработчик события Click для пункта
меню «О программе»:
prog ^hlp=gcnew prog();
hlp->ShowDialog();
В первой строке файла Form1.h указать
#include “Form2.h”

13.

Открытие модальной формы
System::Windows::Forms::DialogResult dr;
Form2 ^nDial=gcnew Form2();
dr=nDial->ShowDialog();
switch (dr){…}
Конструкция позволяет обрабатывать различные
сообщения, получаемые при закрытии модального
окна.
При обработке событий Click для модального окна в
соответствующих функциях следует писать:
this->DialogResult=
System::Windows::Forms::DialogResult::OK;

14.

Закрытие формы
Метод Close().
• В закрывающейся форме возникает
последовательность событий, которые можно
обрабатывать.
• Их назначение – проверить возможность
закрытия формы и указать, что именно
подразумевается под закрытием формы.

15.

Проверка необходимости закрытия
• Чтобы проанализировать, сохранил ли
пользователь документ, с которым он работал
в данной форме и который изменил.
• Если пользователь не сохранил изменения,
– приложение должно спросить о необходимости сохранения,
– в зависимости от ответа пользователя, сохранить документы,
закрыть приложение без сохранения или, вообще, отменить
закрытие.
• При наступлении события FormClose
анализируется значение FormClosedEventArgs.
English     Русский Rules