Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Волченков Проектирование WИНДОWС-приложениы на языке ВИСУАЛ БАСИЦ 2015

.pdf
Скачиваний:
5
Добавлен:
12.11.2022
Размер:
2.37 Mб
Скачать

На данной панели сначала следует обратить внимание на окно Проводника Решения (Solution Explorer), в котором «по умолчанию» представлена стандартная структура нового проекта. Редактирование формы следует начинать, щёлкнув кнопку View Designer этого окна. При этом в главном окне Главной панели будет располагаться «макет» формы, на которую следует поместить необходимые экземпляры элементов управления из набора Toolbox. Поочерёдно щёлкая форму и эти элементы управления, делаем доступными свойства указанных объектов (в окне Properties). Значения этих свойств устанавливаются в соответствии с пожеланиями, сформулированными на этапе 1. (Например, для удаления кнопок

минимизации и «распахивания» формы следует изменить значения её свойств MinimizeBox и MaximizeBox с True на False.)

Для реализации компьютерного интерфейса (в данной и во всех последующих работах) рекомендуется заполнять таблицу свойств, подобную следующей:

Имя

Класс

Свойство

Значение свойства

объекта

объекта

объекта

 

Form1

Form

Text

“Приветствие пользователю”

 

 

MinimizeBox

False

 

 

MaximizeBox

False

TextBox1

TextBox

Font

Name: “Times New Roman”

 

 

 

Size: 24

 

 

TextAlign

Center

 

 

MultiLine

True

Button1

Button

Font

Type: “MS Sans Serif”

 

 

 

Size: 14

Отметим, что некоторые свойства являются «потомками» «родительских» свойств (например, свойства-потомки Name и Size родительского свойства Font). Значения некоторых свойств можно менять «на глазок», такие, как размеры формы и положение окна работающего приложения на экране. Эти значения можно установить с помощью мыши, «растягивая» или «сжимая» ширину и высоту формы. Также с помощью мыши можно «на глазок» устанавливать размеры элементов управления и положение их на форме.

11

3. Ввод кода процедур. Для ввода кода процедур программного модуля используется переход к окну программного кода с помощью щелчка кнопки View Code в окне Solution Explorer. В левом раскрывающемся списке в окне программного кода следует найти и щёлкнуть интересующий нас объект (в данном случае Button1). В правом раскрывающемся списке следует найти интересующее нас событие для этого объекта (в данном случае Click). Появятся две строки (первая и последняя) для данной процедурысобытия (рис. 1.2).

Рис. 1.2. Вид окна среды проектирования после щелчка кнопки View Code

Между указанными строками записывается код данной проце-

дуры:

Код 1.1

Public Class Form1

Private Sub Button1_Click(ByVal sender As Object, _

ByVal e As System.EventArgs) Handles _

Button1.Click

TextBox1.BackColor = Color.Blue

TextBox1.ForeColor = Color.White

Button1.Visible = False

12

TextBox1.Text = "Привет, " & _

InputBox("Введитете Ваше имя") & "!"

End Sub

End Class

В записи данного кода из-за слишком большой длины двух строк использован знак переноса «_».

4. Интерпретация (запуск) проекта. Запуск проекта осуществ-

ляется щелчком кнопки Start Debugging (зелёный треугольник на главной линейке инструментов) и вызывает появление окна проектируемого приложения (рис. 1.3, а). После щелчка единственной кнопки на форме появляется стандартное окно ввода системы Windows, в текстовое поле которого пользователь вводит своё имя, например: Николай. После этого вид формы становится таким, как на рис. 1.3, б.

а

б

Рис. 1.3. Вид окна сразу после запуска приложения (а) и после щелчка кнопки и ввода имени (б)

13

Остановка выполнения программы осуществляется либо щелчком кнопки Stop Debugging (синий квадратик на главной линейке инструментов), либо кнопкой закрытия приложения.

5. Сохранение проекта и создание исполняемого приложе-

ния. Для сохранения проекта и одновременно его компиляции (создания исполняемого приложения) достаточно щелкнуть кнопку Save All главной линейки инструментов среды проектирования. Появляется панель сохранения проекта (рис. 1.4):

Рис. 1.4. Вид панели сохранения проекта

Место сохранения проекта «по умолчанию» устанавливается так, как показано в текстовом поле Location, и может быть изменено, но рекомендуется «согласиться» с предлагаемым вариантом. В указанной папке Projects будет создана папка Приветствие, в которой сохранится файл Приветствие.sln данного «решения» (Solution) и папка проекта с тем же именем (рис. 1.5).

Рис. 1.5. Содержимое папки Solution

14

Рис. 1.6. Содержимое папки проекта Приветствие

Папка проекта (рис. 1.6) содержит 3 папки и 4 файла (в том числе файл проекта Приветствие.vbproj). Именно этот файл следует «запускать» для последующей доработки данного проекта.

Исполняемый (скомпилированный) файл Приветствие.exe можно найти в папке Debug, которую содержат папки bin и obj.

Задание 1.2. Освоение возможности использования элемента управления Timer, а также применение условного оператора If Then Else (и/или оператора Select Case) языка Visual Basic.

Вариант 1. Создать приложение «Секундомер». Его назначение то же, что и у обычного (механического) секундомера. Щелчок командной кнопки (процедура Button1_Click) должен запускать «секундомер» – в поле метки (элемент Label1) через равные промежутки времени (например, через 0,1 секунды) должно изменяться число (начиная с 0, увеличиваясь на 0,1). Надпись СТАРТ на командной кнопке после запуска «секундомера» должна меняться на ФИНИШ. И наоборот – после его остановки надпись ФИНИШ должна меняться на СТАРТ.

Указание. В начале программного кода должно быть сделано объявление переменной ns как десятичного числа обычной или двойной точности:

Dim ns As Single или Dim ns As Double.

Включение и выключение таймера (элемента управления Timer1) осуществляется изменением значения его свойства Enabled программно – в процедуре Button1_Click. Значение свойства Interval элемента Timer1 должно быть установлено равным 100, что

15

соответствует 0,1 секунды. Процедура-событие Timer1_Tick должна изменять значение переменной ns на эту величину, а также изменять значение свойства Text элемента Label1. Желательно отображать время в форме: hh:mm:ss,s. Для этого следует использовать функцию форматирования и дополнительные переменные nm и nh типа Integer или Short – целое число – для «минут» и «часов». Тогда процедура Timer1_Tick будет иметь следующей вид:

Код 1.2

Private Sub Timer1_Tick(ByVal sender As Object, _ ByVal e As System.EventArgs) Handles Timer1.Tick

ns = ns + 0.1 If nm >= 60 Then

ns = 0 nm = 0

nh = nh + 1 End If

If ns >= 60 Then ns = 0

nm = nm + 1 End If

Label.Text = Format(nh, "00:") & _ Format(nm, "00:") & _ Format(ns, "00.0")

End Sub

Вариант 2. Создать приложение «Светофор». Его назначение – демонстрация «логики» работы уличного светофора: правильного чередования включения и выключения огней светофора (красный – жёлтый – зелёный – жёлтый – красный – жёлтый и т.д.) Время горения каждого цвета должно быть задано, например: красный 2,5 с, жёлтый 0,2 с, зелёный 1,5 с.

Указание. В начале программного кода должно быть сделано объявление переменной n как небольшого целого числа:

Dim n As Byte или Dim n As Short.

С помощью таймера эта переменная должна циклически принимать значения: 0, 1, 2, 3, 0, 1, 2, 3, … Это реализуется двумя строками в процедуре Timer1_Tick (код 1.3).

16

Код 1.3

n = n + 1

If n = 4 Then n = 0

Для изображения огней светофора предлагается использовать графические файлы, которые задают значение свойства Image у пяти полей изображения PictureBox1 – PictureBox5 (2 круга чёрного цвета и по одному кругу красного, жёлтого и зелёного цветов).

Через промежутки времени, определяемые программно для каждого цвета светофора, следует размещать объекты PictureBox1 – PictureBox5 в нужных местах экранной формы: 3 объекта – один под другим, 2 объекта – за границей видимости. В процедуре Timer1_Tick целесообразно использовать оператор Select Case n для рассмотрения всех случаев – для всех четырёх значений переменной n. В каждом из этих случаев устанавливается значение интервала времени для таймера, а также расположение «огней». Например, пусть высота формы 350 пикселей, а высота графического окна 75 пикселей. Тогда для случая 0 (горит только красный «огонь») фрагмент процедуры следующий:

Код 1.4

Select Case n

 

 

Case 0

 

 

Timer1.Interval = 2500

 

 

PictureBox1.Top =

125

'Black

PictureBox2.Top =

225

'Black

PictureBox3.Top =

25

'Red

PictureBox4.Top =

350

'Yellow

PictureBox5.Top =

350

'Green

...

 

 

End Select

 

 

 

 

 

17

Отчет о работе

Отчет заключается в демонстрации студентом на терминале работы двух самостоятельно отлаженных проектов:

1)проекта «Приветствие»;

2)одного из двух проектов: «Секундомер» или «Светофор» (в

соответствии с предложенным вариантом), работающих в режиме отладчика, а также демонстрация двух исполняемых Windows при-

ложений, соответствующих указанным проектам.

18

Работа 2

Примеры проектирования Windows-приложений на языке

Visual Basic .NET (2005, 2010) с использованием встроенных функций: математических, финансовых, обработки строк и преобразования типов

Цель работы: изучение студентами основных типов функций Visual Basic на примере создания простых Windows-приложений. В этих приложениях должны быть реализованы встроенные функции различных видов: математические, финансовые, преобразования типов данных, обработки строк.

Подготовка к работе

Перед выполнением работы студенту необходимо ознакомиться с литературой и материалами лекций, а также проконтролировать свои знания, ответив на следующие вопросы:

1.Назовите основные типы данных языков Visual Basic .NET, 2005, 2010 (укажите, какие из них – числовые).

2.Приведите примеры функций преобразования значения одного типа в соответствующее значение другого типа (числа в строку, строки в число, строки в целое число, в десятичное число, в дату и т.д.).

3.Назовите арифметические операции, используемые в вычисляемых арифметических выражениях языка Visual Basic. Расположите их в порядке возрастания их приоритета.

4.Какие значения возвращают функции Sin, Cos, Tan, Atn, Log, Exp, Sqr, Abs, Sgn, Rnd?

5.Приведите примеры использования функций преобразования строк (вычисление длины строки, склеивания строк, выделения подстроки, поиска в строке данной подстроки и т.д.).

6.Что представляют собой аргументы и возвращаемые значе-

ния финансовых функций Nper(rate, pmt, pv, fv, t), Rate(np, pmt, pv, fv, t), PV(rate, np, pmt, fv, t), FV(rate, np, pmt, pv, t), Pmt(rate, np, pv, fv, t)?

19

7.Что возвращает функция InputBox? Какой ее аргумент является обязательным, а какие – необязательными?

8.Какие пиктограммы и как можно устанавливать в окне MsgBox? Какие кнопки и как можно устанавливать в этом окне?

Какие значения возвращает функция MsgBox?

9. Как можно определять пользовательские функции? Чем отличаются глобальные пользовательские функции (Public) от локальных (Private)?

Задания

В ходе выполнения данной работы студент с помощью языка Visual Basic 2005 (2008) должен выполнить три задания.

2.1. Создать проект Windows приложения, в котором используются математические функции.

2.2. Создать проект Windows приложения, в котором используются финансовые функции.

2.3. Создать проект Windows приложения, в котором используются функции обработки строк.

Пример выполнения работы

Задание 2.1. С помощью языка Visual Basic 2005 (2010) создать проект Windows приложения, в котором используются математические функции.

Вариант 1. Создать проект приложения, в котором рассчитывается площадь треугольника по трём сторонам. Значения сторон вводятся через текстовые поля. Используется формула Герона:

S p( p a)( p b)( p c) ,

где p – полупериметр.

Вариант 2. Создать проект приложения, в котором рассчитывается площадь треугольника по координатам вершин. Координаты вводятся через текстовые поля. Используется формула:

S Abs x1 ( y3 y2 ) x2 ( y1 y3 ) x3 ( y 2 y1 ) .

2

20

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]