Пример 4.3.4-1. Ввод данных с помощью функции InputBox( )

Тема 3

Структура VB-программ, классы и процедуры. Средства программирования алгоритмов
линейной структуры

Структура простейших VB-программ

При создании простых Приложений Windows Forms программный код проекта, написанный на VB,может состоять из программного кода, генерируемого средой разработки, и программного кода, написанного или дописанного программистом. Причем базовая структура программы создается автоматически в тот момент, когда разработчик проекта выбирает в окне Создание проекташаблон Приложение Windows Forms.

Простые Приложения Windows Forms могут содержать следующие составляющие:

· операторы Option, определяющие основные правила обработки программного кода, предупреждающие синтаксические и логические ошибки:

Option Explicit,

Option Compare,

Option Strict;

· операторы Imports…, импортирующие в программу компоненты библиотек, определяемые в импортируемом пространстве;

· модули форм:

Public Class Имя_Формы

End Class;

· модули классов:

Public Class Имя_класса

End Class;

операторы описания типов, данных с ключевыми словами Dim, Private и

Public, находящиеся внутри модулей, классов и процедур;

процедуры, генерируемые средой разработки внутри модулей формы;

процедуры, написанные программистом, которые могут находиться

как внутри модулей формы, так и внутри стандартных модулей (общие

процедуры).

Таким образом, программный код VBхранится в программных моду

лях в виде процедур (методов). Эти программные модули могут быть

двух видов:

· модуль формы;

· модуль класса.

При рассмотрении базовых средств программирования VB будут использоваться только Приложения Windows Forms, которые состоят из одной формы, и содержат, как правило, только один модуль – модуль формы.

В свою очередь модуль формы может содержать процедуры событий, процедуры пользователей и операторы описания данных (простых переменных, массивов и констант) с ключевыми словами Dim, Private и Public.

Таким образом, программный код простого приложения будет иметь структуру, приведенную на рис. 4.3.1-1.



 
Option Explicit On Option Strict On Option Strict On Imports System.Math Imports

Private Sub Form1

Описание глобальных данных
Процедура пользователя - 1 (Общая процедура - 1)

Процедура пользователя - n (Общая процедура – n)
Процедура обработки событий - 1

Процедура обработки событий - m

End Class

Рис. 4.3.1-1. Структура простейшего приложения

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

По умолчанию переменные локальны для любой процедуры – они могут быть использованы и изменены только в той процедуре, в которой они созданы (объявлены). Также можно объявить переменные в верхней части программного кода формы, до описания процедур пользователей и процедур событий, и тем самым при­дать переменным более широкую область видимости, распространяющу­юся на всю форму. Однако, при создании в проекте нескольких форм, переменные, объявленные в верхней части формы, будут доступны толь­ко в той форме, в которой они объявлены. Точно также, процедуры собы­тий по умолчанию объявляются как частные (Private) и являются локальными для той формы, в которой они созданы. Например, нельзя из второй формы с именем Form2вызвать процедуру события Button1_Click(…), если она объявлена в Form1как частная.

Чтобы сделать переменные и процедуры доступными для всех форм и процедур событий проекта, их следует объявить в одном или несколь­ких стандартных (общих) модулях, включенных в проект.

Изучение общих модулей и общих процедур пока отложим, а подробно изучим структуру и содержание модуля формы, а также правила написания процедур пользователя и другие средства программирования VB.

Объявление глобальной, или открытой переменной в модуле формы достаточно просто – необходимо перед заголовками процедуры (сразу после Public Class Form1) ввести ключевое слово Public или Dim, за которыми следует имя_переменной и объявление ее типа. После того, как переменная будет объявлена, использовать ее содержимое, изменять его или отображать на экране можно в любой процедуре программного кода модуля формы.

Например, операторы объявления, приведенные ниже, объявляют открытую переменную с именем Total типа Integer:

Public Total As Integer Dim Total As Integer

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

4.3.2. Создание и использование процедур
пользователей

Ранее мы познакомились со «встроенными» (т.е. готовыми к употреблению) процедурами (например, Sqrt()), которые в VB являются методами класса. Мы также познакомились с процедурами обработки событий, которые являются частью пользовательского интерфейса и которые выполняются, только если происходит некоторое событие. В отличие от «встроенных процедур», эти процедуры разрабатывает программист (разработчик проекта).

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

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

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

Процедуры, которые будут рассмотрены ниже, не относятся ни к встроенным процедурам, ни к процедурам обработки событий – это общие процедуры.

Общие процедуры, в отличие от процедур обработки событий, начинают выполняться не в ответ на какое-либо событие, а после их явного вызова в программном коде. После выполнения такой процедуры происходит автоматический возврат в то место программного кода, откуда процедура была вызвана.

Использование процедур предполагает, что они должны обязательно быть определены (описаны) и вызваны (должно быть к ним обращение по имени). Таким образом, каждой процедуре должно быть присвоено уникальное имя. Кроме того, для вызываемой процедуры может быть установлен перечень входных и выходных параметров.

Входные параметры процедуры – это переменные, значения которых при вызове этой процедуры должны быть определены (присвоены допустимые значения) и, которые участвуют в вычислительном процессе (реализации) процедуры. При описании процедуры перед ними ставиться ключевое слово ByVal.

В общем случае процедуры являются способом объединения набора связанных между собой элементов программного кода для выполнением конкретной задачи (алгоритма). В VBимеются два основных типа процедур:

1)Процедуры типа Function – процедура-функция илипроцедура-Function вызываются из процедур со­бытий или других процедур по имени.Процедуры-Functionчасто используются для вычислений различных выражений, могут получать входные параметры, и предназначены для возврата одного значения через свое имя.

2)Процедуры типа Sub – процедура–подпрограмма илипроцедура-Sub вызываются из процедур со­бытий или других процедур по имени. Они могут получать входные параметры и возвращать выходные параметры, значения которых получены в результате работы процедуры. Однако, в отличие отпроцедуры-Function, процедуры-Sub не возвращают значения, свя­занного с их именами.

Процедуры-Functionи процедуры-Subдолжны быть предварительно определены (описаны) в коде программы формы до их вызова.

Использование процедур общего назначения предоставляет следующие преимущества:

· позволяет связать часто используемую группу операторов программ кода со знакомым именем;

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

· делает программный код более простым и легко читаемым, так как, разделенный на небольшие части он, легче воспринимается, чем оформленный в виде одного большого фрагмента;

· упрощает разработку проектов, так как проект, разделенный на логические (функциональные) единицы, легче разрабатывать и отлаживать; кроме того, если программный проект разрабатывается группой разработчиков, то можно обмениваться готовыми процедурами и модулями;

· позволяет повторно использовать процедуры в других проектах и решениях (можно легко встроить процедуры из стандартного модуля в другие программные проекты);

· расширяет язык VB (процедуры часто могут выполнять задачи, которые не могут быть выполнены отдельными операторами VB).

Описание процедуры-Function– это группа операторов, расположенных между ключевыми словами Function и End Function. Операторы в процедуре-Function выполняют осмысленную работу – в соответствии с заданным алгоритмом. Они используются только тогда, когда результатом выполнения процедуры является значение, какой-либо одной величины числового, строкового или логического типа. Чтобы выполнить (вызвать) – функцию, необходимо поместить в любое допустимое выражение программного кода имя этой функции и все требуемые для нее фактические параметры.

Аргументы (формальные параметры) процедуры-Function– это переменные, используемые для работы функции, и они должны быть заключены в круглые скобки после имени и разделены запятыми. В целом использование процедуры-Functionв точности совпадает с использованием встроенных функций. Функции, объявленные (описанные) в модуле формы, по умолчанию являются открытыми в пределах данной формы. В результате они могут использоваться (вызываться) из лю­бой процедуры события проекта или из другой процедуры модуля формы.

Описание процедуры-функции имеет следующий синтаксис:

FunctionИмяФункции (ФормальныеПараметры) As ТипВозЗначения … ОператорыФункции … Returnзначение или ИмяФункции = значение … End Function

Здесь важными являются следующие синтаксические элементы: ИмяФункции –это уникальное имя создаваемой функции;

· ТипВозЗначения –это тип значения, возвращаемого функцией, то есть тип величины, которая является результатом работы функции;

· ФормальныеПараметры (аргументы) –это список необязательных аргументов, разделенных запятыми и используемых в данной функции. Каждый аргумент дол­жен быть объявлен с указанием конкретного типа данных и типа возвращаемого значения. По умолчанию VB добавляет к каждому аргументу ключевое слово ByVal, которое указывает на то, что в функцию через данный аргу­мент передается копия значения фактического параметра, и все изменения значения этого ар­гумента не будут возвращены в вызывающую процедуру – передача параметров по значению;

ОператорыФункции –это блок операторов, который выполняет работу функции;

Return –это оператор, с помощью которого можно указать место, где в блоке кода функции требу­ется возвратить значение в вызывающую программу, и каково это возвращаемое значение. После выполнения этого оператора происходит выход из процедуры-функции и управление передается в то место программы, откуда эта процедура-функция была вызвана.

Процедуры-Subпохожи на процедуры-Function, за исключе­нием того, что процедура-Sub не возвращает значения, связанного с ее именем.

Базовый синтаксис описания процедуры Sub имеет вид:

SubИмяПроцедуры (ФормальныеПараметры) … ОператорыПроцедуры … End Sub

Отметим следующие синтаксические элементы:

· ИмяПроцедуры– это имя создаваемой процедуры-Sub.

· Формальные параметры (аргументы)– это список необязательных аргументов, разделенных запятыми, если их больше одного. Причем каждый аргумент должен быть объявлен с указанием конкретного типа данных и типа возвращаемого значения. Формальные параметры в процедуре-Subмогут быть как входные так и выходные. По умолчанию VS добавляет к каждому ар­гументу ключевое слово ByVal, которое указывает на то, что в процедуру-подпрограмму через данный аргумент передается копия значения, и все изме­нения значения этого аргумента не будут возвращены в вызывающий код. Кроме параметров типа ByValв процедуре-Subмогут параметры типа ByRef.

· ОператорыПроцедуры– это блок операторов, который выполняет работу процедуры по заданному алгоритму.

При вызове процедуры-Sub количество и типы аргументов, переда­ваемых в процедуру (они называются фактическими параметрами), должны совпадать с количеством и типом аргумен­тов, указанных при объявлении (описании) процедуры (это формальные параметры), и вся группа аргументов должна быть заключена в круглые скобки. Таким образом, количество и типы соответствующих друг другу формальных и фактических параметров должны совпадать. Если переменные, передава­емые в процедуру-Sub, изменяют свое значение при ее выполнении, то значения этих переменных не возвращаются в вызываемую процедуру, если эти аргу­менты не объявлены с помощью ключевого слова ByRef. По умолчанию процедуры-Sub в модуле объявляются как открытые, так что они могут вызываться лю­бой процедурой проекта.

4.3.3. Передача параметров по значению (ByVal)
и по ссылке (ByRef)

Итак, каждой процедуре присваивается уникальное название – имя процедуры. Кроме того, для процедуры четко устанавливается перечень входных и выходных аргументов (входных и выходных параметров). Прежде чем определять процедуру, необходимо четко представить, чтопроцедура делает, что она должна получать (что у нее на входе) и какие результаты возвращать (что на выходе). Параметры, перечисляемые в скобках при описании процедуры, называются формальнымипараметрами (перед такими параметрами обязательно ставится клю­чевое слово ByVal или ByRef (тип вызова данного параметра) и после имени параметра указывается его тип значений данного параметра). Параметры, которые указываются при вызове процедуры, называются фактическими. Передача параметров в процедуру из вызывающей процедуры может осуществляться двумя способами: по значению (By Value) или по ссылке (By Reference). Обычно по значению передаются входные параметры, а по ссылке – выходные.

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

Выходной параметр процедуры– это переменная, которая получает свое значение в результате работы процедуры. Использование ключевого слова ByRef указывает, что переменные должны быть переданы в процедуру по ссылке. Это значит, что процедура не создает локальную переменную под формальный параметр, а получает доступ к области памяти, в которой хранится фактический параметр, т.е. получает его адрес. Поэтому все изменения, сделанные в рамках процедуры, будут производиться прямо на тех же ячейках памяти, в которых хранится фактический параметр, и следовательно переданы обратно в вызывающий код.

При выборе способа передачи параметра (по ссылке или по значению) решающий критерий – должен ли параметр изменять свое значение в процедуре.

Вот некоторые рекомендации о том, когда следует использовать ByVal, а когда - ByRef:

· используйте ByVal тогда, когда требуется, чтобы процедура не изме­няла передаваемую в нее через аргумент переменную;

· используйте ByRef тогда, когда требуется позволить процедуре из­менять передаваемую в нее переменную;

· когда сомневаетесь, используйте ключевое слово ByVal, так как в этом случае фактический параметр гарантированно не будет изменен в ходе выполнения процедуры.

Однако так как при передаче по значению происходит копирование объекта, данные большого объема (например, структуры или многомерные массивы) более эффективно передавать по ссылке.

Структуру программы, оператор присваивания и выражения мы уже разобрали. Для реализации алгоритмов линейной структуры необходимо знать, как может быть реализован в VB ввод исходных данных и вывод результатов.

4.3.4. Средства программирования алгоритмов
линейной структуры и процедуры ввода
и вывода

Последовательными называются такие алгоритмические струк­туры, в которых функциональные блоки вы­полняются в том порядке, в котором они записаны или изо­бражены на схеме алгоритма.

    P1, P2, Pn – выражения, операторы, процедуры  

Рис. 4.3.4-1. Схема алгоритма линейной структуры

Такая структура может быть составлена из совокупности программных блоков «Пуск/останов», «Ввод/вывод», а также блоков «Процесс» (рис. В.3-2). Cхема алгоритма линейной структуры приведена на рис. 4.3.4-1.

Обычно для ввода информации в программном коде проекта программист может использовать объект текстового поля формы TextBox и его свойство Text.

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

'процедура-Function ввода данных типа Double 'из текстового поля TextBox Function vvodDbl1(ByVal T As TextBox) As Double Return (Val(T.Text)) End Function

Вызов (обращение) такой процедуры, например, для ввода значения переменной x1 типа Double из текстового поля TextBox1формы можно осуществлять следующим образом:

Dim x1 As Double x1 = vvodDbl1(TextBox1)

Вторым способом ввода информации является использование библиотечной функции InputBox( )VBдля отображения на экране диалогового окна, и последующее использо­вание переменной для хранения текста, введенного пользователем.

Функция InputBox( )вызывает окно InputBox,которое состоит из четырех элементов (рис. 4.3.4-2):

Окно ввода – это стандартное диалоговое окно, которое появляется на экране в результате вызова функции InputBox(). Значение функции
InputBox() – строка, которую ввёл пользователь. Поэтому, если программе надо получить число, то введённая строка должна быть преобразована в число при помощи соответствующей функции преобразования. Стандартное окно InputBox для ввода представлено на рис. 4.3.4-2.

Пример 4.3.4-1. Ввод данных с помощью функции InputBox( ) - student2.ru  

Рис.4.3.4-2. Стандартное окно для ввода данных

Синтаксис функции InputBox() ввода данных выглядит так:

Переменная = InputBox ("Приглашение", "Заголовок")

Где,

· Приглашение – это любой текст, который должен находиться в Окне ввода. Его назначение – служить подсказкой пользователю, какую информацию он должен ввести в специальное поле ввода, находящееся в этом окне;

· Заголовок – это надпись в строке заголовка Окна ввода.

Например,

Name = InputBox("Введите, пожалуйста, первое число", "Ввод числа")

Вывод в окно сообщения(рис. 4.3.4-3)можно осуществить с помощью функции MsgBox(). Она позволяет поместить в окно с сообщением один из стандартных значков, например, "Внимание", задать количество и тип командных кнопок и определить, какую из кнопок нажал пользователь.

Синтаксис функции MsgBox() выглядит так:

В = MsgBox ("Сообщение", НомерКнопки, "Заголовок")

Где,

· Сообщение – представляет собой текст, который будет отображен на экране;

· НомерКнопки – указывает тип отображаемых кнопок, тип используемой пиктограммы;

· Заголовок – это надпись в строке заголовка Окна вывода.

Возможные установки для НомерКнопки представлены в табл. 4.3.4-1.

Таблица 4.3.4-1

Константа Описание
MsgBoxStyle.Ok Отображает только кнопку Ок
MsgBoxStyle.OkCancel Отображает кнопки Ок и Отмена
MsgBoxStyle.AbortRetryIgnore Отображает кнопки Стоп,Повтор,Пропустить
MsgBoxStyle.YesNoCancel Отображает кнопки Да, Нет, Отмена
MsgBoxStyle.YesNo Отображает кнопки Да, Нет
MsgBoxStyle.RetryCancel Отображает кнопки Повтор и Отмена
MsgBoxStyle.Critical Отображает запрещающую пиктограмму
MsgBoxStyle.Question Отображает предупреждающую пиктограмму (знак вопроса на белом фоне)
MsgBoxStyle.Exclamation Отображает предупреждающую пиктограмму (знак вопроса в красном треугольнике)
MsgBoxStyle.Information Отображает информационную пиктограмму

Пример 4.3.4-1. Ввод данных с помощью функции InputBox( ) - student2.ru

Рис.4.3.4-3. Форма для ввода и вывода данных

Пример 4.3.4-1. Ввод данных с помощью функции InputBox( ).

1)Создать проект c именем Пример 4.3.4-1.

2)В IDE откроется пустая форма проекта Пример 4.3.4-1.

3)Создать форму, которая содержит одну надпись (Label) и две кнопки(Button). Для получения входных данных от пользователя использовать функцию InputBox(). За­тем введенное значение необходимо отобразить в надписи формы (рис. 4.3.4-4).

Пример 4.3.4-1. Ввод данных с помощью функции InputBox( ) - student2.ru

ис. 4.3.4-4. Окно ввода функции InputBox()

4)Дважды щелкнуть мышью на кнопке InputBox.

5)В окне Редактора кода появится процедура события

Button1_Сliск(…).

6)Чтобы объявить две переменные и использовать функцию InputBox(), необходимо ввести операторы программы, показанные на рис. 4.3.4-5.

Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs)Handles Button1.Click Dim Prompt, FullName As String Prompt = "Введите Ваше имя" FullName = InputBox(Prompt) MsgBox(FullName, , "Введено имя") Label1.Text = FullName End Sub

Рис. 4.3.4-5. Программный код процедуры события

Проекта Пример 4.3.4-1

С помощью оператора Dim производится объявление сра­зу двух переменных: Prompt и FullName. Обе переменные объявля­ются с использованием типа String. (Вы можете объявить в одной стро­ке столько переменных, сколько хотите, но при условии, что они имеют один и тот же тип.)

Вторая строка процедуры события присваивает переменной Prompt текстовую строку. Это сообщение будет использовано как текстовый параметр для функции InputBox( ). Следующая строка вызывает функцию InputBox( ) и присваивает результат этого вызова (текстовую строку, введенную пользователем) переменной FullName. InputBox()– это функция VB, которая отобра­жает на экране диалоговое окно и запрашивает пользовательский ввод.

После того как InputBox() возвратит в программу текстовую строку, чет­вертый оператор этой процедуры помещает имя пользователя в свой­ство Text объекта Label1 и, таким образом, отображает его в форме.

7)Сохранить изменения.

8)Запустить программу на выполнения.

9)Щелкнуть на кнопке InputBox формы.

VB начнет выполнять процедуру события Button1_Click(…), и на

экране появится диалоговое окно InputBox.

10)Ввести свое полное имя, а затем щелкнуть на ОК (рис. 4.3.4-6).

Пример 4.3.4-1. Ввод данных с помощью функции InputBox( ) - student2.ru

Рис. 4.3.4-6. Результат выполнения проекта Пример 4.3.4-1

Функция InputBox() возвращает введенное имя в программу и поме­щает его в переменную FullName. Затем программа использует эту переменную для отображения этого имени на форме.

Функцию InputBox() необходимо использовать в своих программах всегда, когда требуется запросить у пользователя какую-либо информацию. Вы мо­жете использовать эту функцию совместно с другими элементами управления ввода и управлять потоком данных, поступающих в программу и исходящих из нее.

11)Чтобы завершить выполнение программы, щелкнуть на кнопке
Выход.

Выполнение проекта остановится.

12)Процедура-Function vvodDbl2(), которая использует InputBox(),

может быть реализована следующим образом:

'процедура-Function ввода данных типа Double Function vvodDbl2(ByVal p As String, ByVal T As TextBox) As Double T.Text = InputBox(P) Return CDbl(Val(T.Text)) End Function

Вызов такой процедуры можно осуществлять, например, для ввода значения переменнойx1типа Double.

Dim x1 As Double x1 = vvodDbl2("Введите имя", TextBox1)

Для вывода информации, во-первых, необходимо отобразить содержимое переменной на форме, что можно сделать, присвоив значение этой пе­ременной свойству (например, свойству Textобъекта элемента управления формы), или пере­дав переменную как аргумент в функцию диалогового окна.

'Процедура вывода данных типа Double в TextBox Sub vivodDbl1(ByVal Z As Double, ByVal T As TextBox) T.Text = CStr(Z) End Sub

Вызов такой процедуры можно осуществлять, например, для вывода значения переменной x1 типа Double в текстовое поле:

Dim x1 As Double vivodDbl1(x1, TextBox1)

Пример 4.3.4-2. Вывод сообщения с помощью функции MsgBox().

1)Если окно Редактор кода из предыдущего примера не отображается в IDE, следует сделать двойной щелчок мышью на кнопке InputBox формы на рис. 4.3.4-4.

2)В окне Редактор кода появится процедура события Button1_Click(…) (это код, который был введен в предыдущем примере).

3)Выделить в процедуре события оператор (последняя строка):

4)Label1.Text = FullName.

5)Это оператор отображает в надписи содержимое перемен­ной FullName.

6)Нажать клавишу <Delete>, чтобы удалить эту строку.

7)Оператор будет удален.

8)Вместо удаленной строки в процедуре события необходимо ввести следующую строку: MsgBox(FullName, , "Введено имя").

9)Этот новый оператор вызывает функцию MsgBox(), отображает в диа­логовом окне содержимое переменной FullName и помещает в его стро­ку заголовка слова Введено имя (рис. 4.3.4-7).

Public Class Form1 Private Sub Button2_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button2.Click End End Sub Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click Dim Prompt, FullName As String Prompt = "Введите Ваше имя" FullName = InputBox(Prompt) MsgBox(FullName, , "Введено имя")'Label1.Text = FullName End Sub End Class

Рис. 4.3.4-7. Программный код проекта Пример 3.4-2

1)Щелкнуть на кнопке Начать отладку на панели инструментов.

2)Щелкнуть на кнопке InputBox формы, а затем ввести в поле ввода имя и щелкнуть на ОК.

3)VB сохранит введенное значение в переменной FullName, а за­тем отобразит его в окне сообщения. Форма будет выглядеть, как на
рис. 4.3.4-8.

Пример 4.3.4-1. Ввод данных с помощью функции InputBox( ) - student2.ru

Рис. 4.3.4-8. Результат работы проекта Пример 3.4-2

4)Чтобы закрыть окно сообщения, щелкнуть на ОК. Затем выполнить команду Остановить отладку элемента Отладка основного меню, чтобы закрыть проект.

5)Процедура-Sub vivodDbl2(), использующая для вывода MsgBox() может быть реализована следующим образом:

'Процедура вывода данных типа Double функцией MsgBox Sub vivodDbl2(ByVal Z As Double, _ ByVal S As String, ByVal T As TextBox) T.Text = MsgBox(CStr(Z), S) End Sub

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

значения переменной x1 типа Double в текстовое поле:

Наши рекомендации