Написание программного кода
Дописать программный код для обработки событий, нажав
кнопки Button1и Button2, используя окно Редактор кода.
Внутри окна Редактора кода находятся строки кода, связанного с текущей формой. Операторы программы, которые используются совместно для выполнения некоторого действия, обычно группируются в программные конструкции, называемые процедурами. Обычным типом процедуры является процедура Sub, называемая процедурой - подпрограммой. Процедуры Sub в первой строке содержат ключевое слово Sub и заканчиваются оператором End Sub. Обычно процедуры выполняются при определенных обстоятельствах, например, таких, как щелчок на кнопке или вызовом специального оператора. Когда процедура ассоциирована с конкретным объектом и событием, она называется событийной процедурой.
При двойном щелчке мышью на кнопке ЗАВЕРШИТЬ VB автоматически добавляет первую и последнюю строки процедуры события Button2_Click().
Тело процедуры, которое находится между заголовком процедуры и оператором, завершающим процедуру – Sub…EndSub, будет исполняться каждый раз, когда пользователь активизирует элемент интерфейса, ассоциированный с этой процедурой. В данном случае событие - это щелчок мышью на кнопке Button2, но как будет показано далее, это может быть и другой тип события.
Между заголовком и концом процедуры ввести оператор End, а затем нажать на клавишу со стрелкой вниз.
После ввода оператора буквы становятся синими и создаются отступы, что указывает, что VB распознал End как одно из нескольких сотен зарезервированных или ключевых слов языка VB. Ключевое слово End используется для остановки программы и удаления с экрана ее формы. В данном случае End также является законченным оператором программы, то есть инструкцией, исполняемой компилятором VB. Напомним, что компилятор – это часть VS, обрабатывающая и выполняющая анализ каждой строки исходного кода VB, и объединяющая результаты с другими ресурсами с целью создания исполняемого файла. Все операторы программы должны следовать грамматическим правилам компилятора. В VS операторы программ могут состоять из ключевых слов, свойств, имен объектов, переменных, чисел, специальных символов и других значений. При вводе операторов программы и внесении других изменений, окно Редактор кода выполняет многие задачи, связанные с форматированием, включая настройку отступов, пробелов и добавление необходимых скобок. Точное написание оператора программы называется синтаксисом оператора.
При нажатии на клавишу «стрелка вниз» оператор Endбыл сдвинут вправо так, чтобы он был отделен от операторов Private Sub и End Sub. Эта схема форматирования является одним из соглашений программирования и предназначена для того, чтобы программы выглядели ясно и читаемо. Соглашения относительно того, как организуется код в программе, часто называется стилем программирования.
Теперь, когда написан программный код, связанный с кнопкой
ЗАВЕРШИТЬ, необходимо написать код для кнопки ВЫЧИСЛИТЬ.
Написать программный код, который будет выполняться при нажатии кнопки ВЫЧИСЛИТЬ, то есть событийную процедуру для кнопки Button1.
Чтобы отобразить форму, щелкнуть в окне Обозреватель решений на кнопке Конструктор. В режиме Редактора программного кода форма, с которой производится работа, не отображается. Кнопка Конструктор является одним из тех механизмов, которые используются для того, чтобы снова вывести форму на экран. Также можно щелкнуть на вкладке Form1.vb[Конструктор].
Дважды щелкнуть мышью на кнопке формы ВЫЧИСЛИТЬ.
Через некоторое время появится окно Редактор кода, а рядом с процедурой события, связанной с кнопкой Button2, появится процедура события, ассоциированная с кнопкой Button1.
Хотя текст этой кнопки был изменен на «ВЫЧИСЛИТЬ», ее имя в программе осталось Button1. (Имя и текст элемента интерфейса могут быть различными для удобства программирования). Каждый объект может иметь несколько связанных с ним процедур - по одной для каждого распознаваемого события.
Между операторами Private Sub Button1_Click() и End Sub необходимо ввести строки, показанные на рис. 4.2.5-6.
После ввода каждой программной строки необходимо нажать <Enter> на клавиатуре, а для создания отступа необходимо нажать на <Тав> и следить за вводом операторов программы в точности так, как они напечатаны на рис. 4.2-5.6. (При вводе длинных строк Редактор кода будет прокручивать экран влево.) Если будет сделана ошибка, которая обычно определяется по подчеркиванию волнистой линией, удалите неверную строку и введите ее снова.
При вводе кода программы VB форматирует ее текст и отображает различные части программы различными цветами, которые помогают распознавать различные элементы. В момент ввода свойства отображается список, содержащий все допустимые свойства объекта, так что вместо набора свойства вручную можно дважды щелкнуть на свойстве мышью. Если VB отображает сообщение об ошибке, то оператор, скорее всего, введен с ошибкой. Сверьте строку с текстом в книге, сделайте необходимые исправления и продолжайте набирать. Также можете удалить всю строку и начать вводить ее заново. Кроме того, VB может автоматически добавлять необходимый код.
Дописать программный код, добавив в него до оператора Public Class Form1операторы установки параметров VB:
Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click Dim A As Single, B As Single, C As Single Dim P As Single, Pp As Single, S As Single 'Присваивание переменной В значения поля TextBox2 B = TextBox4.2.Text 'Присваивание переменной А значения поля TextBox1 A = TextBox1.Text 'Присваивание переменной С значения поля TextBox3 C = TextBox3.Text 'Вычисление периметра и присваивание значения Р P = (A + B + C) 'Вычисление полупериметра и присваивание значения Рр Pp = P / 2 'Вычисление площади и присваивание знач. переменной S S = Sqrt(Pp * (Pp - A) * (Pp - B) * (Pp - C))) 'Вывод знач. полупериметра в текстовое поле TextBox4 TextBox4.Text = P 'Вывод значения площади в текстовое поле TextBox5. TextBox5.Text = S End Sub Private Sub Button2_Click(ByVal sender As System.Object, _ ByVale As System.EventArgs) Handles Button4.2.Click End End Sub |
Рис. 4.2.5-6. Программный код процедур события
Окно панели Редактора кода будет выглядеть так, как показано на рис.4.2.5-7.
Элементы VB, отображаемые на экране зеленым цветом, называются комментарием. Комментарии – это описательные пояснения, включаемые в программный код после символа апострофа ('). Программисты используют комментарии для описания действия операторов программы. VB при запуске программы не обрабатывает эти пояснения; они существуют только для документирования того, что делает программа. При написании программы часто придется использовать комментарии, чтобы оставить легко воспринимаемые записи о том, что же вы сделали.
Сохранить введенный программный код, выполнив, например, команду Сохранить все элемента Главного менюэлемента Файл.
Команда Сохранить все сохраняет все файлы, входящие в проект – собственно файл проекта, файл формы, все модули кода и все связанные с приложением компоненты. Если это первое сохранение проекта, появится диалоговое окно Сохранить проект, запрашивающее имя и место для сохранения проекта. (Если ваша копия VS настроена так, чтобы запрашивать место сохранения проекта при его создании, то диалогового окна Сохранить проект вы не увидите – VS просто сохранит все изменения.)
Щелкнуть на кнопке Обзор справа от текстового поля Местоположение и выбрать место для сохранения файлов.
Рис.4.2.5-7. Окно редактора кода
4.7) Технология IntelliSense и точечная нотация
Теперь нам известно, как с помощью VB читать и записывать значения свойств форм и элементов управления. Если у каждой формы и элемента управления много свойств, как за ними уследить? Не слишком удобно постоянно переключаться между Редактором кода и окном Свойства, чтобы выяснить, какие свойства нам нужны. Имеется более удобный способ.
Рис. 4.2.5-8. Пример использования технологии IntelliSense
Можно использовать технологию IntelliSense. IntelliSense позволяет экономить время при редактировании программного кода в окне редактора. IntelliSense знает, к какому элементу управления вы обращаетесь и, какие у него есть свойства; выводит список свойств и позволяет вам выбирать из него нужное. Используемое чаще всего свойство подсвечивается, когда IntelliSense отображает список. Например, для текстового поля изначально подсвечивается свойство Text. С помощью стрелок вверх и вниз на клавиатуре можно просматривать список и выбирать то свойство, которое вам требуется. При нажатии клавиши <Tab> клавиатуры выбранное свойство добавляется в код. Используя IntelliSense, не придется запоминать все свойства всех элементов управления. Кроме того, данное средство заметно сокращает потребность набирать длинные имена. Например,
Во время ввода с клавиатуры текста программного кода и, в частности, TextBox2, нажмем клавишу «точка». Как только будет введена точка, IntelliSense отобразит список свойств элемента TextBox2. По умолчанию в списке IntelliSense подсвечивается чаще всего используемое свойство (рис. 4.2.5-8).
Если далее будет введена буква, например, буква «T», IntelliSense прокрутит список до первого по алфавиту свойства, начинающегося с «T». По мере ввода IntelliSense ищет в списке свойство, наиболее соответствующее введенным буквам.
Когда свойство подсвечивается в списке IntelliSense, рядом появляется подсказка, кратко его описывающая. Эта подсказка, например, может сообщить, что свойство доступно только для чтения (Read Only, т. е. ему нельзя присваивать значение). Кроме того, подсказка сообщает, какие значения можно присваивать свойству, например, строку (текст) или целое число.