Лучше для значков применять простые изображения, которые легко передаются квадратом размеров 16x16 пикселов. Более сложные значки сильно искажаются при просмотре с низким разрешением.
Фигурные и прозрачные элементы управления
.NET Framework предоставляет инструменты для создания элементов управления разной прозрачности и формы, отличной от традиционного прямоугольника. Хотя это чрезвычайно мощное средство создания визуальных эффектов для интерфейса, пользуйтесь им в меру. Например, текстовое поле в форме пончика выглядит забавно и оригинально, но едва ли оно повысит эффективность приложения или сделает его удобнее. Применяя подобные эффекты, всегда помните об интересах конечного пользователя. Разнообразные элементы управления и формы (например круглые кнопки) делают пользовательский интерфейс привлекательным и не выбиваются из стиля приложения, только когда применены со вкусом. Полупрозрачные формы хороши тем, что позволяют держать в поле зрения форму, расположенную на заднем плане. Эстетика повышает удобство работы с приложением.
1.2. Работа с формами
Как говорилось ранее, форма — это фундаментальная единица интерфейса. Формы представляют собой основу для взаимодействия с пользователем, «площадку» для построения гармоничного и привлекательного интерфейса. Формы получают от пользователя данные и отображают их. В принципе, возможно приложение и без единой формы (например, сервисы Windows и консольные приложения). Однако приложению, постоянно взаимодействующему с пользователем, необходима по крайней мере одна форма, а для нормальной работы более сложных приложений иногда требуется несколько форм.
Добавление формы к проекту
Благодаря формам пользователь взаимодействует с приложением. При создании нового проекта Windows Forms к нему по умолчанию добавляется форма с именем Forml. В действительности это не экземпляр формы, а класс, представляющий ее объект кода. Эту форму можно редактировать средствами инструмента под названием дизайнер (designer), добавлять к ней элементы управления, меню и прочие графические компоненты. При усложнении приложения наступает момент, когда требуются дополнительные классы форм.
Как добавить к проекту новую форму
1. Выберите из меню Project команду Add Windows Form — откроется диалоговое окно Add New Item.
2. Щелкните Windows Form, затем Open — в среде разработки появится новая форма.
Новую форму можно также добавить напрямую, отредактировав код. В этом случае объявляется переменная типа Form и создается экземпляр этого типа. Созданную таким образом форму разрешено использовать и отображать в течение всего срока исполнения приложения. Однако ее нельзя редактировать с помощью инструментов с графическим интерфейсом, так как она недоступна во время разработки. Этот прием часто применяют для отображения готовых форм.
Назначение стартовой формы
Если приложение Windows Forms содержит несколько форм, следует одну из них назначить стартовой. При запуске приложения она загружается первой.
Чтобы сделать форму стартовым объектом, объявите в ней метод Main, который служит точкой входа в приложение. Таким образом, размещение метода Main определяет стартовую форму приложения. В следующем примере наличие метода Main делает форму myForm стартовой формой приложения:
static void Main()
{
Application. Run=new myForm());
}
Если в проекте несколько форм с методом Main, стартовой можно сделать любую из них. Для этого также используют окно свойств проекта (рис. 2-2).

Рис. 2-2. Окно свойств проекта Visual C#
Как назначить стартовую форму
4. Выберите в окне Solution Explorer нужный проект — его имя будет выделено подсветкой.
5. В меню Project щелкните элемент Properties.
6. Выберите из списка Startup Object требуемую форму. В ней должен быть метод Main, определяющий допустимый стартовый объект.
Выбор первоначального размещения формы
Свойство формы StartPosition позволяет определить место, в котором форма появится на экране впервые. Это свойство может принимать любое значение из перечисления StartPosition (таблица 2-1).
Чтобы определить первоначальное размещение формы, назначьте соответствующее значение свойству StartPosition.
Таблица 2-1. Значения свойства StartPosition

Изменение внешнего вида формы
Внешний вид пользовательского интерфейса — важная составляющая приложения.
Неудачный интерфейс трудно осваивать, а значит, требуется больше времени и средств на обучение работе с приложением. Внешний вид формы можно изменять, корректируя ее свойства.
У формы множество «врожденных» свойств, которые определяют ее облик. Их значения можно просматривать и изменять в дизайнере через окно свойств формы (рис. 2-3).

Рис. 2-3. Окно свойств формы
Некоторые свойства, такие, как Font, в действительности заключают в себе несколько значений, каждое из которых влияет на вид формы по-своему. Щелкнув в окне Properties знак «+»рядом с именем свойства (Font), вы сможете просмотреть и изменить каждое из этих значений. Для некоторых свойств, таких, как BackColor и ForeColor, значения определяют средствами специального редактора.
Свойства формы также разрешено менять в коде во время выполнения. Например, следующая команда назначает фону красный цвет:
// Предполагается, что следующий метод вызывают
// из кода формы, цвет фона которой нужно изменить.
this. BackColor = System. Drawing. Color. Red
Для работы со свойствами принят тот же синтаксис, что и для других членов класса. Значения свойств устанавливают при помощи оператора присваивания (=) и получают, обращаясь к свойствам по имени.
Свойства BackColor, ForeColor и Text
С результатом работы этих свойств пользователи сталкиваются в первую очередь.
Свойство Text определяет текст заголовка формы, a BackColor к ForeColor — цвета, которые используются на форме. Свойство ForeColor определяет цвет текста переднего плана. При размещении на форме большинство элементов управления автоматически устанавливают свое свойство ForeColor согласно значению одноименного свойства формы. Аналогично ведет себя свойство BackColor (оно определяет цвет фона) у многих элементов управления, в том числе Button и Label: при перетаскивании их в окно дизайнера это свойство автоматически устанавливается в соответствии со свойством BackColor формы. У остальных элементов управления, например у TextBox, это свойство определяется независимо от фона, поэтому его приходится задавать вручную.
Поскольку выбор цвета важен для дизайна пользовательского интерфейса, следует отнестись к нему очень внимательно. Возможно, во время разработки красный текст на голубом фоне выглядит забавно, но после развертывания приложения читать такой текст очень трудно. Чтобы облегчить чтение форм, следует применять высоко контрастные цветовые схемы.
Свойства Font, Cursor и BackGroundlmage
Их можно считать дополнительными «рычагами» для управления пользовательским интерфейсом. Свойство Font позволяет указать шрифт для всех элементов управления формы. Помните, что он должен быть гармоничным и облегчать восприятие содержимого. Свойство Cursor задает вид указателя мыши, который он принимает, находясь над формой. Свойство BackGroundlmage позволяет использовать изображение вместо однотонного фона. Если задано фоновое изображение, то изменение свойства BackColor формы отразится на значении одноименного свойства всех размещенных на ней элементов управления, но никак не повлияет на саму форму.
Прозрачность
Варьируя прозрачность формы, удается получать замечательные эффекты. Прозрачностью формы управляет свойство Opacity, принимающее значение из диапазона 0-1, Значение 1 означает полную непрозрачность, значение 0 — полную прозрачность, а промежуточные значения — разную степень прозрачности. По умолчанию свойство Opacity равно 1. Свойство Opacity следует применять, когда требуется держать одну форму на переднем плане, держа в поле зрения ту, что расположена на заднем плане.
Обычно свойство Opacity элементов управления устанавливается в соответствии с одноименным свойством их формы-контейнера.
Чтобы создать прозрачную или полупрозрачную форму, присвойте свойству Opacity значение меньше 1, например, так:
// Эта команда делает форму полупрозрачной
MyForm. Opacity = .5;
В окне Properties значение свойства Opacity отображается в процентах, поэтому во время разработки для этого свойства можно выбирать значение от 0 до 100%.
Применение методов формы
Методы применяются для исполнения тех или иных действий. Методы, являющиеся членами класса, выполняют действия, составляющие функциональность данного класса. Любая форма инкапсулирует базовый набор функций, унаследованный от класса System. Windows. Forms. Form, куда входят методы, управляющие отображением формы и доступом к ней в пользовательском окружении. Вот некоторые из них:
• Form. Show
• Form. Show Dialog
• Form, Activate
• Form. Hide
• Form. С lose
Для вызова любого из этих методов необходима ссылка на форму, то есть в памяти должен быть заранее созданный экземпляр формы. При запуске приложение автоматически создает экземпляр стартовой формы в дополнение к тем экземплярам форм, которые создаются в коде.
Внутри класса формы можно ссылаться на текущий экземпляр этой формы посредством ключевого слова this (C#). Допустим, нужно написать метод, изменяющий цвет фона формы. Поскольку этот код воздействует только на текущий экземпляр формы, задачу удается решить лишь при помощи указанного ключевого слова. Вот пример метода, модифицирующего заголовок формы:
// Эта команда модифицирует заголовок текущего экземпляра формы
this. Text = "This is the active form";
Методы Show и ShowDialog
Пользователи работают только с видимыми формами. Чтобы сделать форму видимой, вызовите метод Form. Show, который загружает экземпляр класса формы в память, отображает его на экране и передает ему фокус ввода, при этом свойство Visible автоматически устанавливается в true. Если экземпляр формы уже загружен, но пока не видим (например, если его свойство Visible установлено в false), вызов метода Form. Show даст тот же результат, что и установка свойства Visible в true.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 |


