Урок № 29. Знакомство с формами


Знакомство с формами

Доброго времени суток! В этом уроке я познакомлю Вас с основными особенностями использования форм, об их основных свойствах, событиях, и предназначении. И так, к делу! Давайте начнем с того, что же такое форма в контексте визуального программирования на языке C#. Форма — это окно программы. Но это только с одной стороны, со стороны пользователя, а со стороны программиста — это еще и основной контейнер для других элементов графического интерфейса, кнопок, текстовых полей и прочего. У графического приложения должна быть как минимум одна форма, это его основная форма, его главное окно. Но могут быть и другие, вспомогательные окна, такие как окно настроек, окно авторизации и другие виды окон.

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

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

О том, как задавать значения свойствам элементов графического интерфейса и регистрировать обработчики событий, я рассказывал в предыдущем уроке.

Основные свойства

BackColor — задает цвет фона окна (цвет можно выбрать из списка доступных цветов).

BackgroundImage — задает фоновое изображение для окна (можно выбрать изображение, сохраненное на диске Вашего ПК, например).

ContextMenuStrip — позволяет подключить к окну всплывающее меню (отображаемое по щелчку правой кнопкой мыши), как им пользоваться, я расскажу в одно из следующих уроков.

Enabled — разрешает или запрещает доступ к элементу, если указать значение true, то форма и все её элементы будут доступны для пользователя (он сможет нажимать на кнопки, вводить текст и т.п.), значение false — наоборот, запрещает доступ.

FromBorderStyle — задает стиль рамки окна. Есть возможность выбрать один из вариантов, представленных в таблице ниже.

Значение Краткое описание
None Рамки окна нет.
FixedSingle Рамка есть. Изменять размер окна нельзя. Иконка окна присутствует.
Fixed3D Рамка окна как бы объемная. Изменять размер окна нельзя. Иконка окна присутствует.
FixedDialog Рамка есть. Изменять размер окна нельзя. Иконки окна нет.
Sizable Рамка есть. Изменять размер окна можно. Иконка присутствует.
FixedToolWindow Рамка есть (имеет специфический вид). Изменять размер окна нельзя. Иконки нет.
SizableToolWindow Рамка есть (имеет специфический вид). Изменять размер можно. Иконки нет.

Как видите, можно не только изменять стиль рамки окна, но и разрешать/запрещать пользователю изменять размер окна.

Icon — дает возможность установить иконку для окна. В качестве иконки используется изображение в формате *.ico.

MainMenuStrip — устанавливает основное меню окна. Будет рассмотрено при изучении компонент, отвечающего за представление главного меню.

MaximumSize — Устанавливает максимально допустимый размер окна в виде xx; yy, где xx — ширина окна, а  yy — высота. А если задать значение 0; 0, то форма не будет не будет иметь верхнего ограничения размера. Свойство MinimumSize работает так же, только устанавливает минимальный размер окна.

Opacity — устанавливает уровень прозрачности окна (100% — окно непрозрачное, 0% — максимально прозрачное).

Size — задает размер формы, по использованию, похоже на свойство MaximumSize.

ShowIcon — позволяет скрывать иконку окна, если установлено в false. В противном случае иконка будет отображаться в соответствии со значением свойства FromBorderStyle.

ShowInTaskBar — позволяет скрывать окно из панели задач, если установлено в false.

StartPosition — задает начальное положение окна при его отображении. Есть возможность выбрать один из вариантов, представленных в таблице ниже.

Значение Краткое описание
Manual Положение окна задается вручную координатами верхнего левого угла окна (задается через свойство Location в формате xx;yy; как расстояния от верхнего левого угла экрана по горизонтали — xx и по вертикали — yy ).
CenterScreen Окно отображается по центру экрана
WindowsDefaultLocation Окно отображается на усмотрение системы
WindowsDefaultBounds Похоже на предыдущее значение. Еще и устанавливается размер окна.
CenterParent Окно отображается по центру родительского окна.

TopMost — дает возможность отображать окно поверх всех других, если установить значение в true.

Text — задает заголовок окна.

Visible — позволяет делать окно невидимым, если установлено в false.

MinimazeBox  и MaximizeBox — позволяют скрывать кнопки сворачивания и разворачивания окна на весь экран соответственно, если установлены в значения false. Кнопки приведены на рисунке ниже.

Кнопки сворачивания и разворачивания окна

Кнопки сворачивания и разворачивания окна

Основные события

Activated — возникает, когда форма становится активным окном.

Load — возникает при первом появлении формы.

Click — возникает при щелчке мышью по форме.

DoubleClick — возникает при двойном щелчке мышью по форме.

FormClosing — возникает во время закрытия окна (или перед закрытием).

FormClosed — возникает после закрытия окна.

Основные методы

Show — показывает окно.

ShowDialog — показывает окно в модальном режиме. Когда одна из форм показана в модальном режиме, доступ пользователям к другим формам невозможен, пока он не закроет эту.

Close — закрывает окно (освобождаются ресурсы, занятые формой).

Hide — скрывает окно (делает его невидимым).

Информация, представленная в данном уроке, имеет скорее теоретическое предназначение, но это не значит, что мы отказываемся от практике, без практики, теория не стоит ничего! Так что попробуйте создать новый проект, и «поиграть» хотя бы со свойствами главной формы. А практику, я обязательно устрою, но через несколько уроков, когда дам основную информацию по самым используемым и простым элементам графического интерфейса.

Перейти к следующему уроку