| netlib.narod.ru | < Назад | Оглавление | Далее > |
Как и во многих других классах, в классе Form определяется ряд собственных свойств, и, кроме того, Form наследует свойства от своих предков, в частности, от Control. О двух таких свойствах я уже говорил — это Text и Visible. В следующей программе присваиваются значения некоторым свойствам, чтобы продемонстрировать гибкость, с которой можно создавать и показывать формы.
FormProperties.cs
//------------------------------------------------
// FormProperties.cs (C) 2001 by Charles Petzold
//------------------------------------------------
using System.Drawing;
using System.Windows.Forms;
class FormProperties
{
public static void Main()
{
Form form = new Form();
form.Text = "Form Properties";
form.BackColor = Color.BalanchedAlmond;
form.Width *= 2;
form.Height /= 2;
form.FormBorderStyle = FormBorderStyle.FixedSingle;
form.MaximizeBox = false;
form.Cursor = Cursors.Hand;
form.StartPosition = FormStartPosition.CenterScreen;
Application.Run(form);
}
}
Свойство BackColor определяет цвет фона формы. В следующей главе вы узнаете, что Color — структура, определенная в пространстве имен System.Drawing (обратите внимание на инструкцию using), которая содержит 141 свойство. На самом деле эти свойства являются именами цветов, перечисленных в файле Colors.pdf на компакт-диске, прилагаемом к этой книге.
Свойства Width и Height определяют начальные размеры формы. Два оператора, изменяющие эти свойства, выполняют операции get и set, удваивая ширину окна и вдвое уменьшая высоту окна относительно значений по умолчанию.
FormBorderStyle — перечисление, определяющее не только вид и функциональность рамки формы, но и другие аспекты работы с формой. Возможные значения таковы:
Перечисление FormBorderStyle
| Член перечисления | Значение | Описание |
| None | 0 | Рамка и заголовок отсутствуют |
| FixedSingle | 1 | То же самое, что и FixedDialog |
| Fixed3D | 2 | Имеет «объемный» вид |
| FixedDialog | 3 | Рекомендуется использовать в диалоговых окнах |
| Sizable | 4 | Используется по умолчанию |
| FixedToolWindow | 5 | Маленький заголовок, меню управления отсутствует |
| SizableToolWindow | 6 | То же, что и FixedToolWindow, но с рамкой, позволяющей изменять размер |
При использовании стиля FormBorderStyle.Sizable форма показывается с заголовком; в заголовке слева находится кнопка меню управления, затем идет текст заголовка, затем идут кнопки свертывания/развертывания и справа — кнопка закрытия. В стилях FixedToolWindow и SizableToolWindow (инструментальное окно) заголовок имеет меньшие размеры, а кнопок управления и свертывания/развертывания нет.
Стиль FormBorderStyle.FixedSingle, который я использовал в приведенной выше программе, не позволяет пользователю изменять размер формы. Кроме того, я присвоил свойству MaximizeBox значение false, поэтому кнопка развертывания, как видно ниже, отключена:

Свойство Cursor определяет вид курсора мыши, когда курсор находится в клиентской области формы. Свойство StartPosition определяет, где первоначально показывается форма. Значение CenterScreen перечисления FormStartPosition указывает, что форма появится в центре экрана, а не в месте, автоматически определяемом Windows, как это было бы по умолчанию.
Анализируя программу FormProperties, можно поразмышлять над тем, как структурируются программы Windows Forms. Чтобы заставить форму взаимодействовать с пользователем, нужно вызвать Application.Run, но, пока форма не закроется, Appiication.Run не вернет управление.
Словом, пока что не видно, куда поместить свой код!
| netlib.narod.ru | < Назад | Оглавление | Далее > |