Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции_1 / С_12_Работа с несколькими формами.ppt
Скачиваний:
19
Добавлен:
19.04.2015
Размер:
2.73 Mб
Скачать

12. Работа с несколькими формами.

1. Параллельные формы

SDI – Single Document Interface – однодокументный интерфейс – организация проекта, включающего независимые формы.

Добавление новой пустой формы к проекту – команда «Проект / Добавить форму Windows»:

Активизация дополнительной формы – метод Show() этой формы.

private void button1_Click(object sender, EventArgs e)

{

Form2 f2 = new Form2(); f2.Show();

}

2. Модальные формы

В рамках SDI–интерфейса дополнительную (независимую) форму можно открывать в модальном режиме.

Основная особенность – невозможно переключиться на основную форму, пока не закроешь модальную.

Активизация дополнительной формы – метод ShowDialog() этой формы.

private void button2_Click(object sender, EventArgs e)

{

Form2 f2 = new Form2(); f2.ShowDialog();

}

Форма, открытая в модальном режиме, закрывается

автоматически, если на ней нажать т.н. «модальную кнопку», т.е. кнопку, свойство DialogResult которой отлично от None.

При этом значение данного свойства модальной кнопки возвращается как результат функции ShowModal.

DialogResult=Yes DialogResult=No

private void button1_Click(object sender, EventArgs e)

{

Form2 f2 = new Form2(); DialogResult DR = f2.ShowDialog();

if (DR == DialogResult.Yes) this.Close();

}

3. Многодокументный интерфейс

MDI Multiple Document Interface – многодокументный интерфейс – организация проекта, основная форма которого может содержать произвольное количество однотипных дочерних форм.

Создадим учебный проект, работающий в режиме MDI.

1. В новом приложении сделаем единственную форму (Form1) обрамляющим окном MDI.

Для этого установим IsMdiContainer

в true.

В результате текущее окно превращается в контейнер для дочерних форм.

Обычно все MDI приложения имеют меню, в котором обязательно присутствует пункт

Windows.

2. Добавим на форму главное меню – компонент MenuSrtip и настроим его.

Обычно внутренние окна MDI приложения используются для отображения различных документов.

В нашем проекте будем отображать текстовые документы.

3. Создадим форму – шаблон для дочернего MDI-

окна.

форму,

Для

используя

форму

Windows

 

Чтобы дочерняя форма могла отображать текст, установим на неё компонент RichTextBox – текстовый редактор.

Чтобы окно текстового редактора заполняло всю клиентскую область дочерней формы, установим значение его свойства Dock равным Fill.