| | ||
|
|
|
Ограниченный
объем книги не позволяет нам рассмотреть все свойства класса Form, но мы хотим
выделить существенные различия между поведением форм в прежних версиях VB и
VB .NET. Одно из самых принципиальных изменений связано с использованием шрифтов.
Вместо старых шрифтовых свойств (например, FontBold) используется класс Font
пространства имен System.Drawing, самый распространенный конструктор которого
выглядит следующим образом:
Sub New(ByVal family As FontFamily.ByVal emSize As Single._
ByVal
style As FontStyle)
Термин «семейство
шрифтов» (font family) хорошо знаком пользователям Word. Семейством называется
группа шрифтов (Times New Roman, Courier New, Arial и т. д.), объединенных сходным
графическим стилем, но обладающих разным кеглем и атрибутами начертания (курсив,
жирный шрифт и т. д.).
Например,
поскольку оператор Or объединяет значения отдельных битов, следующая команда
присваивает переменной MyFont объект полужирного курсивного шрифта Arial с кеглем
12 пунктов:
myFont =New System.Drawing.Font("Arial". 12._
FontStyle.Bold
Or FontStyle.Italic)
Следующая
процедура события Button 1_C1ick изменяет шрифт при нажатии кнопки:
Private
Sub Buttonl_Click(ByVal sender As System.Object. _
ByVal
e As System.EventArgs) Handles Buttonl.Click
Dim
myFont As System.Drawing.Font
myFont
= New System.Drawing.Font("Arial".12.
FontStyle.Bold
Or FontStyle.Italic)
Me.Font
= myFont End Sub
На рис. 8.9
показано, как выглядит новый шрифт на кнопке.
Рис.
8.9. Кнопка с текстом, оформленным полужирным курсивным шрифтом
При изменении свойства Font формы новый шрифт автоматически используется для
вывода свойства Text всех элементов, расположенных на форме. Исключение составляют
элементы, которым были назначены собственные шрифты.
В сочетании
со свойствами Anchor и Dock часто используются свойства MinimumSize и MaximumSize,
определяющие соответственно минимальные и максимальные размеры формы. Значения
этих свойств представляют собой объекты Size. Например,
следующая команда запрещает уменьшать форму до размеров, меньших размеров кнопки:
Me.MimmumSize
=New Size(Buttonl.Size)
Поскольку
свойство MinimumSize управляет изменением свойства Size, в заданные размеры
включается размер заголовка окна. Таким образом, после выполнения предыдущей
команды в уменьшенном окне почти не останется места для кнопки. Лучше воспользоваться
командой вида
Me.MinimumSize
= New Size(Buttonl.Size.Width * 2, Button1.Size.Height * 2)
При изменении свойства MaximumSize часто используется класс System.Windows.
Forms.Screen, предназначенный для работы с экранами (с поддержкой нескольких
мониторов). Этот класс также используется при изменении свойств DesktopBounds
и DesktopLocation.
Новое свойство
ClientSi ze возвращает информацию о клиентской области формы (области, не включающей
заголовок и рамку). Свойство Bounds предназначено для чтения/записи структуры
Rectangle, содержащей ширину и высоту формы и позицию ее левого верхнего угла.
Класс Rectangle пространства имен System.Drawing содержит немало полезных мето-дов;
подробное описание этой вспомогательной структуры данных приведено в документации.
Мы часто используем метод Inflate, предназначенный для увеличения прямоугольников
с заданным приращением.
Многие свойства,
методы и события форм отличаются от своих прототипов из VB6. Важнейшие изменения
перечислены в табл. 8.1.
Таблица
8.1. Изменения в свойствах, методах и событиях форм
|
Старый элемент
формы |
Новый элемент
формы |
|
Activate/Deactivate
(события) |
Переименованы
в Activated/Deactivated |
|
Container (свойство) |
Переименовано
в Parent |
|
DblClick (событие) |
Переименовано
в DoubleClick |
|
hWnd (свойство) |
Переименовано
в Handle |
|
MouseCursor (свойство) |
Переименовано
в Cursor и возвращает экземпляр класса Cursor |
|
Parent (свойство) |
Заменено методом
FindForm |
|
Picture (свойство) |
Заменено свойством
Backgroundlmage |
|
SetFocus (метод) |
Переименован
в Focus |
|
Startup (свойство) |
Заменено свойством
StartPosition |
|
ToolTip (свойство) |
Заменено элементом
ToolTip, который связывается с элементами через свойство ToolTip элемента |
|
Unload (команда)
Unload (событие) |
Заменена методом
Close Заменено событием
hosing (также существует новое событие Closed, инициируемое после
закрытия формы) |
|
ZOrder (метод) |
Заменен методами
BriflgToFront и SendToBack |
| ; |
| Атомные станции с реакторами РБМК 1000 Преобразование
энергии на АЭС
Конструкция реактора РБМК-1000
Турбина реакторной установки
Сепаратор-пароперегреватель Насосы
атомной станции с реактором РБМК
Система радиационного контроля
Атомные станции с реакторами ВВЭР
Система управления и контроля Атомные
станции с реакторами БН-600
Высшая Математика Курс лекций -
1 семестр Интегралы - второй семестр
примеры решения задач Конспекты - третий семестр Производная
- 4 семестр ТФКП теория функции Дифференциалы
задачи Mathematica учебник Ядерное
разоружение Ядерные испытания
Ядерная физика MATLAB электронный
учебник Maple 7 математический анализ
Первообразная
курсовые задания Типовой по Кузнецову Смоленская
АЭС Чернобыльская катастрофа
|