5.2. Форма и размещение на ней управляющих элементов


            Проект 5.1. «Создание графического интерфейса проекта». Создать приложение, в котором после запуска на форме печатается некоторый текст, например, «Первый проект на языке Visual Basic».

            В первую очередь создадим заготовку проекта, свойству Caption формы Form1 присвоим значение Первый проект

Проект «Создание графического интерфейса проекта».

1

Создать новый проект.

2

Активизировать форму Form1 щелчком мыши. В окне Свойств объекта выбрать свойство Caption и присвоить ему значение “Первый проект”.

            Вывод на форму текстовых сообщений. Вывод на форму текстовых сообщений можно производить различными способами:

-          с помощью элемента управления Label (Метка);

-          с помощью элемента управления TextBox (Текстовое поле);

-          используя метод Print.

            Разместим на форме метку Label1 и присвоим свойству Caption (Надпись) значение выводимого текстового сообщения.

 

3

Выбрать на Панели инструментов класс управляющих элементов Label и разместить экземпляр метки Label1 на форме Form1.

4

Активизировать метку Label1. В окне Свойств объекта выбрать свойство Caption и присвоить ему значение Первый проект на языке Visual Basic.

             Разместим на форме текстовое поле Text1 и присвоим свойству Caption  значение выводимого текстового сообщения.

5

Выбрать на Панели инструментов класс управляющих элементов TextBox и разместить экземпляр текстового поля Text1 на форме Form1.

6

Активизировать текстовое поле Text1. В окне Свойств объекта выбрать свойство Caption и присвоить ему значение “Первый проект на языке Visual Basic”.

            Для вывода на форму текстового сообщения с помощью метода Print необходимо воспользоваться событийной процедурой.

            Событийные процедуры. Любой объект можно связать с набором процедур, исполняемых при наступлении определенных событий. Процедура, связанная с определенным событием   называется событийной процедурой. Событиями являются, например, Click (щелчок по объекту мышью),  Resize (изменение размера объекта), Load (загрузка  объекта) и т.д.

             Двойной щелчок мышью на объекте (форме или управляющем элементе) вызывает окно Программного кода с пустой заготовкой событийной процедуры. Если осуществить двойной щелчок на кнопке Command1, то появится заготовка событийной процедуры Command1_Click.

Private Sub Command1_Click()

End Sub

            В теле процедуры должна быть записана последовательность инструкций (операторов), которые будут выполняться при наступлении события. В данном случае метод Print:

Form1.Print "Первый проект на языке Visual Basic"

7

Выбрать на Панели инструментов класс управляющих элементов CommandButton и разместить экземпляр кнопки Command1 на форме Form1.

8

Активизировать кнопку Command1. В окне Свойств объекта выбрать свойство Caption и присвоить ему значение “Метод Print”.

9

Двойным щелчком по кнопке Command1 вызвать окно Программного кода с пустой процедурой Command1_Click(). Ввести в процедуру метод Print.

            Первоначальный вариант проекта готов и его можно запустить на выполнение. 

10

Ввести команду [Run-Start]. Появится окно приложения Первый проект.

Для выполнения событийной процедуры щелкнуть по кнопке Метод Print.

            

            Установка цвета формы и параметров шрифта. Сделаем внешний вид проекта более привлекательным и для этого изменим свойства объектов, определяющие их внешний вид (цвет фона формы, цвет, размер и выравнивание шрифта на метке, в текстовом поле и в методе Print). 

11

Активизировать форму Form1. В окне Свойств объекта выбрать свойство BackColor (цвет фона) и двойным щелчком открыть диалоговое окно с цветовой палитрой. Выбрать цвет, например, желтый.

12

Активизировать метку Label1. В окне Свойств объекта для свойств установить значения: BackColor -  зеленый, ForeColor (цвет надписи) – синий, Font – размер шрифта 18, Alignment (выравнивание) – center.

13

Активизировать текстовое поле Text1. В окне Свойств объекта для свойств установить значения: ForeColor (цвет надписи) – красный, Font – размер шрифта 14 и начертание курсив, Alignment (выравнивание) – center.

            Для установки параметров шрифта, которые используются в методе Print, необходимо для шрифта (объект Font) установить требуемые значения его свойств (размер шрифта, начертание и др.).  Например, установим размер шрифта 12:

Font.Size = 12

            Для того чтобы новые установки свойств шрифта вступили в действие они должны быть вставлены в событийную процедуру перед методом Print.

14

Двойным щелчком по кнопке Command1 вызвать окно Программного кода с процедурой Command1_Click(). Ввести в процедуру строку Font.Size = 12.

15

После запуска проекта и щелчка по кнопке Метод Print получим новый вид графического интерфейса.

              

            Соглашение об именах объектов. Целесообразно объектам проекта присвоить имена, которые дают возможность распознать их тип и назначение. Принято, что имя начинается с префикса, который определяет тип объекта. Для форм принят префикс frm, для надписей - lbl, для командных кнопок – cmd и т.д. После префикса идет информативная часть имени, которая пишется с заглавной буквы (например: frmFirst, lblText, cmdExit) или содержит число (например, frm1, frm2, frm3).

16

Последовательно активизировать форму Form1, метку Label1, текстовое поле Text1 и кнопку Command1. В окне Свойств объекта последовательно изменить свойство Name (имя объекта) на frm1, lbl1, txt1, cmd1.

17

В окне Программного кода изменить имя событийной процедуры на cmd1_Click() и имя формы на frm1.

 

            

            Расположение формы на экране монитора. Местоположение формы, которое она будет занимать на экране монитора после запуска приложения на выполнение, можно легко изменять с использованием окна Расположения формы. Для этого достаточно перетащить форму с помощью мыши в любое место экрана.

            Точное местоположение и размеры формы отображаются двумя парами чисел в правой части линейки инструментов окна приложения.

 

 

Рис. 5.3. Линейка инструментов

 

            Первая пара чисел показывает расстояние от левого верхнего угла монитора до левого верхнего угла формы, а вторая пара – это размеры формы (ширина и высота). Размеры отображаются в особых единицах – твипах (один твип равен примерно 0,018 мм).

            Если необходимо установить точные значения местоположения и размеров формы, то это можно сделать, установив значения свойств формы  Left (расстояние по горизонтали от левого верхнего угла монитора до верхнего левого угла формы), Top (расстояние по вертикали от левого верхнего угла монитора до верхнего левого угла формы), Width (ширина формы) и Height (высота формы).

 

18

Активизировать форму frm1. В окне Свойств объекта последовательно присвоить свойствам Left, Top, Width и Height значения 1000, 3000, 6000, 4500.

 

            

            Выравнивание формы с использованием событийной процедуры и метода Move. Выравнивание формы по центру экрана монитора можно производить автоматически при запуске проекта. В этот момент производится загрузка формы и активируется событие Form_Load(). Напишем код этой событийной процедуры, который будет производить выравнивание.

            Объект Screen (экран монитора) обладает свойствами Screen.Width (ширина экрана) и Screen.Height (высота экрана). Форма frm1 также обладает свойствами frm1.Width и frm1.Height

Форма будет размещаться в центре экрана, если:

left (левая координата верхнего левого угла формы) будет равна:

(Screen.Width – frm1.Width)/2

 

top ( верхняя координата верхнего левого угла формы) будет равна:

(Screen.Height – frm1.Height)/2

            Для перемещения объектов в определенное место используется метод Move. Формат метода следующий:

object.Move left,top

 

            Воспользуемся методом  Move для перемещения формы в заданное координатами left и top место экрана монитора:

frm1.Move(Screen.Width – frm1.Width)/2, (Screen.Height – frm1.Height)/2

 

            Таким образом, код событийной процедуры выравнивания формы по центру экрана монитора будет следующий:

Private Sub Form_Load()

frm1.Move(Screen.Width – frm1.Width)/2, (Screen.Height – frm1.Height)/2

End Sub

 

19

Двойным щелчком по форме вызвать окно Программного кода с пустой процедурой Form_Load(). Ввести код процедуры выравнивания.

 

            

            Расположение управляющих элементов на форме. Расположение на форме и размеры управляющих элементов можно легко изменять с помощью мыши. Для этого необходимо активизировать объект щелчком мыши (он будет выделен восемью квадратиками - маркерами) и перетащить его на новое место или «ухватить» маркер и перетащить границу элемента.

Точное местоположение и размеры выделенных элементов управления отображаются двумя парами чисел в правой части линейки инструментов окна приложения. Первая пара чисел показывает расстояние от левого верхнего угла формы до левого верхнего угла элемента, а вторая пара – это размеры элемента (ширина и высота).

 

20

Активизировать метку lbl1. В окне Свойств объекта последовательно присвоить свойствам Left, Top, Width и Height значения 750, 600, 4500, 1000.

21

Активизировать текстовое поле txt1. В окне Свойств объекта последовательно присвоить свойствам Left, Top, Width и Height значения 750, 2000, 4500, 1000.

22

Активизировать кнопку cmd1. В окне Свойств объекта последовательно присвоить свойствам Left, Top, Width и Height значения 2400, 3300, 1000, 500.

            

            Сохранение проекта. Проект готов и его необходимо сохранить на диске. Найдите в меню Файл пункт Сохранить как…Сначала Visual Basic предложит вам сохранить форму, причем по умолчанию даст то имя, которое вы задали ей в свойстве Name. Файл с формой и кодами будет храниться под именем вашей формы с расширением .frm.

            После того, как форма сохранена, Visual Basic предложит вам записать на диск файл проекта и по умолчанию предложит вам имя Project1.vbp. В соответствие с соглашением об именах объектов целесообразно сохранить проект под именем с префиксом prj, например, prj1.

            На диске будет сохранено три файла: файл формы с расширением .frm, файл проекта с расширением .vbp и еще один вспомогательный файл с расширением .vbw. Так как проекты могут содержать большее количество файлов (например, несколько файлов форм), рекомендуется для каждого проекта создавать свою папку на диске.

 

23

Сохранить файл формы командой [Save Form1.frm As …] как frm1.frm и файл проекта командой [Save Project As …] как prj1.vbp.

 

            Сохраненный проект может выполняться только в системе программирования Visual Basic. Для того чтобы проект мог запускаться в среде операционной системы необходимо сохранить его в исполняемом файле (типа EXE). Для трансляции проекта в исполняемый файл используется команда [File-Make …] (в свободно распространяемой версии VB5.0 CCE такая возможность, к сожалению, отсутствует).

 

Задания для самостоятельного выполнения (Ответы)

5.1. Создать проект «Вывод сообщений», в котором на форму выводится текстовое сообщение «Первое задание выполнено!» с помощью метки и текстового поля, а выход из программы реализуется щелчком по кнопке Exit. Продумать графический интерфейс проекта.   

5.2. Создать проект «Вывод сообщений в текстовое поле» , в котором два различных варианта текста выводится в текстовое поле TextBox по щелчку по двум кнопкам. Предусмотреть возможность выхода из программы по щелчку по третьей кнопке.

5.3.  Создать проект «Печать на форме», в котором с помощью метода Print напечатать на форме строки шрифтом с теми параметрами, которые указаны в тексте:

«Times New Roman, 18, курсив, красный»

«Arial, 14, подчеркнутый, синий»

«Courier New, 12, полужирный, зеленый»

Предусмотреть очистку формы от напечатанного текста с помощью метода Cls.

5.4.  Создать проект «Перемещение кнопки на форме», в котором на форме (например, в центре) располагаются четыре кнопки и по щелчку перемещаются в заданное место на форме (например, в углы формы).

5.5. Создать проект «Перемещение формы на экране», в котором будет изменяться местоположения формы на экране монитора с помощью четырех командных кнопок. Кнопки расположить в углах формы. После щелчка по кнопке, форма должна переместиться в соответствующую часть экрана. Перемещение формы должно сопровождаться комментариями, выводимыми с помощью надписи в центре формы.

5.6. Модернизировать предыдущий проект-задание 5.5 так, чтобы осуществлять передвижение формы в углы экрана монитора с использованием метода Move.