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 | < Назад | Оглавление | Далее > |