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, поэтому кнопка развертывания, как видно ниже, отключена:


Рис. 2.5.

Свойство Cursor определяет вид курсора мыши, когда курсор находится в клиентской области формы. Свойство StartPosition определяет, где первоначально показывается форма. Значение CenterScreen перечисления FormStartPosition указывает, что форма появится в центре экрана, а не в месте, автоматически определяемом Windows, как это было бы по умолчанию.

Анализируя программу FormProperties, можно поразмышлять над тем, как структурируются программы Windows Forms. Чтобы заставить форму взаимодействовать с пользователем, нужно вызвать Application.Run, но, пока форма не закроется, Appiication.Run не вернет управление.

Словом, пока что не видно, куда поместить свой код!


netlib.narod.ru< Назад | Оглавление | Далее >

Сайт управляется системой uCoz