Метки,текстовые окна,кнопки

Это самые простые и наиболее распространенные управляющие компоненты в Visual Basic.

Метка

Элемент управления Метка - Label используется для размещения на форме текстовой информации, которая содержится в специальных окнах типа надпись. Текст метки задается свойством Caption. Это свойство можно установить в окне Properties или в программном коде. Шрифт надписи определяется свойством Font (Шрифт). Для выбора шрифта в окне свойств необходимо установить курсор напротив выбранного свойства и нажать кнопку с тремя точками. В диалоговом окне Выбор шрифта можно установить название, начертание и размер шрифта. Цвет шрифта задает свойство foreColor.
Оформление надписи изменяется в зависимости от значения свойств.

• BorderStyle задает стиль рамки; по умолчанию имеет значение 0 - None (без обрамления), если значение равно 1 - Fixed Single, то надпись будет иметь контур.

• backcolor задает цвет фона поля надписи.

• Appearance задает для текста объемность.

• Alignment устанавливает выравнивание текста в элементе управления по правому, левому краю или по ширине.

Текст, который задан свойством Caption, может иметь достаточно большой размер и занимать несколько строк. Максимальное количество символов в надписи равно 65 528. Если надпись имеет небольшой и известный размер, то размер можно изменять с помощью мыши, клавиш управления курсором при нажатой клавише , свойств Height и Width в окне свойств. Если размер текстового объекта заранее не известен, то можно использовать свойства Autosize и Wordwrap. Свойство AutoSize = True / False. Если установлено значение True, то происходит расширение площади для размещения текста, который вводится в свойстве Caption. При значении AutoSize = False размер метки не зависит от длины текста, введенного в Caption. Если длина текста превышает длину объекта Label, часть информации, не поместившаяся в объект, будет не видна. Свойство Wordwrap = True / False. Если установлено значение True, то происходит расширение надписи вниз по строкам, изменяется высота объекта Label, пока не поместится весь текст. Ширина надписи остается постоянной. При этом осуществляется автоматический перенос слов. При установке значения Wordwrap = False размер объекта Label изменяется только в горизонтальном направлении.

Текстовое поле

Элемент управления текстовое окно - TextBox, помещенный на форму, применяется для ввода пользователем данных во время работы приложения или вывода данных. Для ввода или вывода данных используется свойство Text, которое заполняется либо в программном коде, либо на этапе проектирования приложения.
Если объект активизирован, то в текстовом окне появляется курсор - можно вводить данные. Числовые данные будут введены в текстовом формате, поэтому их для выполнения вычислений следует привести к числовому формату.
Для задания стиля оформления текстового окна применяются следующие свойства.

Таблица 3.2. Значения некоторых свойств, характерных для текстового окна
Свойство Значение Действие
Alignment Выравнивание 0-Left Justify
1-Right Justify
2-Center
Выравнивание текста по левому краю
Выравнивание текста по правому краю
Выравнивание текста по центру
Locked Блокировка False
True
Пользователь может вводить текст
Текстовое окно заблокировано от ввода информации пользователем, но можно изменить ее во время приложения
PasswordChar Сиволы Любой символ Используется для ввода пароля. Может быть использован любой единичный символ, но часто используется "*". При вводе пароля этот символ выводиться в окно и заменяет реальные символы, введенные пользователем в текстовое окно. Реальное содержимое пароля может храниться в Text
MaxLength Количество символов Целое число Задает предельное количество символов равно. По умолчанию равно 0-количество символов ограничено памятью компьютера. При вводе пароля задает количество символов, состовляющих пароль
MultiLine Много строк False
True
Обычное текстовое окно
Несколько строк для больших текстов. Для перехода на новую строку нажать Enter. Добовляет полюсы прокрутки
ScrollBar Полоса пркрутки 0-None
1-Horizontal
2-Vertical
3-Bath
Нет
Горизонтальная
Вертикальная
Две полосы прокрутки

Текстовые окна прежде всего предназначены для ввода информации пользователями приложения. Если необходимо данные просматривать, но не редактировать, можно использовать свойство Locked = True. Пользователь может только просматривать данные без возможности их редактирования. В этом случае изменение информации в текстовом поле может выполняться только в программном коде.
Для управления текстом в текстовом окне во время работы приложения Visual Basic используются свойства SelStart, SelLength, SelText. Изменение этих свойств возможно только на этапе создания программного кода.
В режиме выполнения приложения один из объектов на форме находится в фокусе или активизирован. Такой объект - текстовое окно доступно для ввода с клавиатуры, если курсор находится внутри текстового окна и готово для ввода текста. При вводе или просмотре информации курсор может перемещаться в пределах окна. В случае, если фокус впервые переходит в текстовое окно, курсор по умолчанию устанавливается слева от находящегося в поле текста.При последующем возвращении фокуса на поле курсор устанавливается в то место, куда он был установлен в последний раз.
Свойство Selstart для объекта TextBox указывает место размещения курсора в поле при установке фокуса. Значение «0» соответствует крайней левой позиции.
Свойство SelLength задает ширину точки ввода. По умолчанию SelLength = 0, ввод символов - с той позиции, где установлен курсор.
Свойство SelText позволяет задавать текст, замещающий выделенный фрагмент в текстовом окне во время выполнения программы.

Командная кнопка - CommandButton

Командная кнопка применяется для выполнения на форме запрограммированных действий, позволяет одним кликом запустить некоторый процесс. При щелчке по кнопке инициируется событие Click для данной кнопки и выполняется процедура, которая написана пользователем для данного события. Это может быть, например, выполнение вычислений.
Кнопка всегда содержит надпись, которая задается свойством Caption и обозначает назначение кнопки. Количество символов в названии не может быть более 255. Если длина надписи больше ширины кнопки, автоматически осуществляется перенос надписи на следующую строку. Если размер кнопки не позволяет поместить всю надпись, то остальная часть отсекается.
После того как кнопка помещена на форму и имеет название, следует определить действия, которые реализуются при нажатии на эту кнопку. Для этого необходимо кликнуть два раза по кнопке и в открывшемся окне редактора кода задать «заготовку» процедуры (заголовок процедуры, содержащий событие Click, и последний оператор процедуры), соответствующую этой кнопке. Другой способ - в проводнике или в меню View - Вид найти команду Code - Код. Выполнение этой команды откроет окно с программным кодом. В списке в окне General необходимо найти CommandButton1 и, щелкнув по имени, получить заготовку будущей процедуры, которую теперь необходимо заполнить.
Часто на форме располагаются две кнопки: одна для активизации некоторых действий (ОК.), другая для отмены каких-либо действий (Cancel). При работе с клавиатурой подобные действия традиционно выполняют клавиши Enter и Esc. Чтобы задействовать применение этих клавиш, можно использовать свойства Default и Cancel для командных кнопок. Поскольку оба эти свойства могут принимать одно из двух значений: True / False, то во избежание проблем и путаницы при назначении кнопок в Visual Basic предусмотрены следующие правила.

• Свойства Default или Cancel могут быть установлены как True только для одной кнопки на данной форме.

• Одна из кнопок может иметь одновременно только одно значение True - либо свойство Default, либо свойство Cancel.

Свойство Value — значение для кнопки устанавливается только во время работы приложения. Это свойство показывает, что кнопка была нажата. Свойство Value = True инициирует один клик мыши по кнопке.
Кнопка может иметь стиль стандартный или графический стиль, который задает свойство Style. Если Style = 0 - Standard, используется обычный стандартный стиль. Если Style = 1 - Graphical - стиль кнопки графический. В этом случае следует активизировать свойство Picture - установить графическое изображение, небольшой рисунок в виде «иконки». Установить курсор напротив свойства в окне свойств, войти в диалоговое окно при нажатии кнопки «три точки» и загрузить рисунок. Выбранная картинка появится на кнопке.

Пример простого создания приложения

Рассмотрим небольшой пример определения процедуры, связанной с обработкой события Click. Разместим в форме два текстовых окна, две метки и две кнопки, нажатие одной из которых будет менять информацию в текстовом поле, вторая кнопка закроет приложение.
Требуется создать приложение для вычисления высоты строки в миллиметрах, если высота строки по умолчанию в таблице текстового редактора равна 12 пунктам.

 Запустить Visual Basic. В окне New Project выбрать Standard.EXE вкладки New (новый) и кликнуть по кнопке <Открыть>.

 На экране появится новый проект и форма Project1 - form1 (form), содержание которой нужно заполнить необходимыми компонентами, с помощью которых можно будет выполнить необходимые вычисления.

 Во-первых, необходим элемент, который будет использоваться для ввода данных - высоты строки в пунктах. Используем для этой цели элемент Text1. Во-вторых, необходим элемент, в котором будет отражен результат - высота строки в миллиметрах. Используем для этой цели элемент Text2.

 Для оформления надписей для обозначения текстовых окон Text1 и Text2 можно использовать метки Label1 и Label2 соответственно.

 Для выполнения функций вычисления необходима хотя бы одна кнопка Command1. Это будет <Старт>. Как было сказано выше, будет две кнопки, вторая кнопка Command2 выполняет функцию завершения работы приложения - кнопка <Финиш>.

 Теперь следует все указанные выше компоненты вынести на форму. Для этого на панели стандартных элементов находим значок одного из компонент, активизируем его и <переносим> на форму: рисуем условный прямоугольник в том месте формы, где будет предположительно находиться этот элемент, учитывая при этом его примерные размеры.

Рис 3.1. Заготовка формы для примера с измененными свойствами

 Аналогичные действия выполняем поочередно для каждого элемента, пока на форме не появятся все шесть элементов. Каждый прямоугольник должен содержать соответствующие названия: Text1, Text2, Label1, Label2, Command1, Command2.

 Далее изменяем свойства объектов в соответствии с рис. 3.1, используя страницу свойств Properties (рис. 3.2). Если это окно Properties было закрыто, кликните по кнопке Project Explorer - Проводник проекта на панели инструментов Project.

 Если в окне проекта слева от пиктограммы Project1 отображен знак <+>, то кликните по значку - должна появиться пиктограмма form1. Если окно формы не появилось, дважды кликните по пиктограмме form1 в окне проекта.

 Для изменения свойств элементов следует активизировать элемент - выделить его на форме. В этом случае он будет иметь вокруг 8 маркеров. На рис. 3.1 активизирована кнопка 2. Далее для выделенного элемента в окне свойств можно вносить изменения: для Command1 изменить свойство Caption = 'старт', для Command2 - свойство Caption = 'финиш'.

Для остальных элементов задать значения свойств:

Text1.Text = ' '   - пустая строка;
Text2.Text = ' '   - пустая строка;
Label1.Caption ='Введите высоту строки в пунктах';
Label2.Caption =' Высота строки в мм'.

Рис 3.2. Список свойств (Properties) объекта

Чтобы надписи в текстовых окнах были выведены по центру, можно изменить свойство Alignment на соответствующее свойство. Следует изменить размеры одноименных элементов, например кнопок, для улучшения восприятия интерфейса создаваемого приложения. Лучше будет, если стиль кнопок будет одинаковым - по размерам (Width, Height), цвету (backColor) и шрифту (Font). To же касается вида текстовых окон и меток.
После того как форма готова, перейдем к созданию программного кода Для этого в проводнике проекта или в меню View

выбрать команду Code.
В окне Project1 - form1 (Code) выбрать в списке General название кнопки 1 и кликнуть по ней. В результате появится заготовка записи программного кода для Command1 с инициированием для нее события
Click. Известно, что 1 пункт = 0,0352 см. Принимая, что а - это высота строки в пунктах, значение ее пользователь должен ввести в окно Text1. Но в текстовом окне данные получаются также текстовые, типа String. Поэтому используем функцию Val() для перевода в числовой тип Single, который объявлен для переменных а и b в начале программы в операторе Dim
Значение строки b вычисляется в миллиметрах, и это значение необходимо определить. На языке программирования Visual Basic это можно записать как b = a x 0.352. Для вывода значения в текстовое окно Text2 используется функция Round(), которая округляет количество знаков после запятой до двух.
Аналогичные действия выполняем в отношении кнопки 2. Для Command2 будет выполняться одно действие - закрыть приложение. Это выполняет команда End. Программный код будет иметь вид:

Private Sub Command1_Click()
Rem кнопка Старт
Dim a, b As Single
a = Val(Text1.Text)
b = a * 0.352
Text2.Text = Round(b, 2)
End Sub
Private Sub Command2_Click()
Rem кнопка финиш
End
End Sub

Прежде чем запустить приложение на выполнение, следует сохранить проект. Для сохранения проекта надо выполнить команду меню File (файл) -> Save Project As (Сохранить проект как). В диалоговом окне Save File As (Сохранить файл как) выбрать название диска, на котором должна быть создана папка для хранения файлов нового проекта. Это можно выполнить и в процессе первого сохранения. Для этого в меню файл (в диалоговом окне <Сохранить как>) выбрать команду Создать -> Папку. В списке файлов появится <Новая папка>, которую можно сразу переименовать и выполнить команду <Открыть>.
Далее для сохранения файла, в данном случае формы, следует набрать имя файла в поле ввода File Name (Имя файла), например Primer, и нажать клавишу Enter. Форма form1 будет сохранена в файле с расширением Primer.frm.
После сохранения формы следует сохранить проект. В Visual Basic это происходит автоматически, после чего должно появиться диалоговое окно Save Project AsPrimer и нажать клавишу . Файл проекта будет с расширением .vbp - Primer.vbp.


Рис. 3.3. Результат работы приложения

Теперь запустить проект на выполнение. Выбираем команду Run -> Start. Результат работы приложения показан на рис. 3.3. Значение высоты строки введено в поле Text1 и нажата кнопка <старт>. В окне Text2 появилось значение высоты строки в пунктах. Для завершения работы приложения следует нажать кнопку <финиш>. Сохранить приложение - <Сохранить>.