Сделай Сам Свою Работу на 5

Программирование на языке VBS. Работа с окнами сообщений и ввода данных





Цель работы

Освоение основ написания и выполнения программы на языке VBS.

Учебные вопросы

1. Создание простейшей программы.

2. Синтаксис и примеры использования функции MsgBox.

3. Синтаксис и примеры использования функции InputBox.

Краткое изложение учебного материала по теме

1 Создание простейшей программы

Программа на языке Visual Basic Scripting Edition(VBS) состоит из инструкций языка (statement) в виде текстовых строк.

 

Несколько инструкций языка можно объединить в одну строку в тек- стовом файле программы с использованием разделителя строк – символа двоеточия ( :) и наоборот, одну строку программы можно написать на не- скольких строках в тексте с использованием символа подчеркивания ( _).

В русском языке инструкции языка программирования обычно назы- вают операторами языка, хотя это не совсем точно: операторами в англий- ских первоисточниках называют символы для обозначения математиче- ских, логических и строковых операций (=, +, -, /, and, or, eqv, & и пр.). Да- лее будет использоваться традиционная русская терминология с использо- ванием слова операторы для обозначения инструкций языка.



Текст программы можно написать в любом простейшем редакторе, сохраняющем файлы в кодировке ASCII, например, в стандартных про- граммах Windows Блокнот или WordPad.

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

Далее воспользуемся редактором Блокнот, как наиболее доступным. Для создания простейшей программы делаем следующее:

1) запускаем Блокнот;

2) пишем в Блокноте строку: MsgBox "Привет!" (это имя функции с аргу- ментом – текстовым значением (константой) между апострофами; имя MsgBox – сокращение от английского выражения Message Box, которое дословно можно перевести, как «коробка сообщений», в системе Win- dows – окно сообщений;


3) сохраняем текстовый файл с именем Prg1.vbs;

4) двойным щелчком мыши запускаем файл на исполнение.

Результат работы этой программы – диалоговое окно в системе Win- dows (Windows-форма), показанное на рисунке 12.1.

 

Рисунок 12.1 – Пример работы простейшей программы на языке VBS, исполняемой системой Windows Based Script Host

2 Синтаксис и примеры использования функции MsgBox



При выполнении этой программы используется стандартная функция языка VBS для вывода сообщений в окно Windows со следующим полным

синтаксисом (здесь и далее в описании синтаксиса в квадратных скобках [ ]

приводятся необязательные элементы, элементы в скобках < >должны быть заменены конкретными значениями):

 

[<p> = ] MsgBox( <Сообщение>[,<Кнопки и значок>] _ [,<Заголовок окна>][,<Справка, раздел>] )

где:

p – переменная, которой присваивается код нажатой кнопки;

Сообщение – аргумент функции, текст в диалоговом окне;

Кнопки и значок – стандартные переменные (приведены далее в таблице 1.1), определяющие кнопки, значок и номер кнопки по умолча- нию в окне (например, vbYesNoCancel + vbInformation + vbDe- faultButton3 или 3+64+512);

Заголовок окна – надпись на заголовке окна (например, «Мое первое окно»);

Справка, раздел – имя файла справки и идентификатор раздела, связан- ного с данным окном.

 

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

 

Дополним текст в файле Prg1.vbs указанными дополнительными па- раметрами (текст пишем в одну строку или используем знак под- черкивания _в конце первой строки для продолжения текста функции на следующей строке):


 

Сообщение
Кнопки, значок и номер кнопки по умолчанию

MsgBox "Привет!", vbYesNoCancel + vbInformation _

+ vbDefaultButton3, "Мое первое окно","tst.hlp",1

Заголовок окна
Справка, ее раздел

Окно запущенной программы будет иметь вид, показанный на ри- сунке 1.3.



 

Рисунок 12.2 – Пример использования функции MsgBox

с заданием набора кнопок, иконки и раздела справки

Функция MsgBoxвозвращает значение нажатой в окне кнопки (например 6, если нажата кнопка Yes (Да), либо другие значения для кнопок vbNo, vbCancelи пр., см. далее таблицу 12.1).

Таблица 12.1 – Константы диалоговых окон

  Константа Зна- че- ние   Описание
vbOKOnly Показана только кнопка ОК
vbOKCancel Показаны кнопки ОК и Отмена (Cancel)
vbAbortRetryIgnore Показаны кнопки Стоп(Abort), Повтор (Retry) и Пропустить (Ignore)
vbYesNoCancel Показаны кнопки Да (Yes), Нет (No) и Отмена (Cancel)
vbYesNo Показаны кнопки Да (Yes) и Нет (No)
vbRetryCancel Показаны кнопки Повтор (Retry) и От- мена (Cancel)
vbCritical Показан значок Stop Mark (знак стоп)
vbQuestion Показан значок Question Mark (знак во- проса)
vbExclamation Выводится значок Exclamation Mark (восклицательный знак)
vbInformation Показан значок Information Mark (ин- формационнный знак)

 

vbDefaultButton1 По умолчанию в окне выбрана первая кнопка
vbDefaultButton2 По умолчанию в окне выбрана вторая кнопка
vbDefaultButton3 По умолчанию в окне выбрана третья кнопка
vbDefaultButton4 По умолчанию в окне выбрана четвёртая кнопка
vbSystemModal Диалоговое окно выводится в модальном режиме и располагается сверху всех дру- гих окон
vbOK Нажата кнопка ОК.
vbCancel Нажата кнопка Отмена (Cancel)
vbAbort Нажата кнопка Стоп (Abort)
vbRetry Нажата кнопка Повтор (Retry)
vbIgnore Нажата кнопка Пропустить (Ignore)
vbYes Нажата кнопка Да (Yes)
vbNo Нажата кнопка Нет (No)

 

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

btn = MsgBox("Привет!", vbYesNoCancel + vbInformation _

+ vbDefaultButton3, "Мое первое окно")

Диалоговое окно будет иметь тот же вид, что и раньше (только без кнопки Справка , см. рисунок 12.2), но после нажатия кнопки в окне пере- менная btnбудет иметь значение, соответствующее нажатой кнопке.

Если Вы желаете написать в окне Сообщение и Заголовок окна, про- пустив второй аргумент (Кнопки и значок), после первого аргумента следу- ет поставить 2 (ДВЕ!)запятые:

MsgBox "Сегодня я написал свою первую программу на VBS!" _

, , "Окно сообщений студента Вани Иванова"

Здесь 2 запятые, т. к. пропущен аргумент <Кнопки и значок>

3 Синтаксис и примеры использования функции InputBox

Еще одна функция языка, позволяющая открывать окно для ввода пользователем с клавиатуры строки текста (максимальная длина строки 256 символов):


 

[<p> = ] InputBox( <Сообщение>[,<Заголовок окна>] _ [,<Стр.умолч.>][,X][,Y][, <Справка, раздел>])

где новые параметры функции (по сравнению с MsgBox):

p – переменная, которой присваивается значение, введенное в поле ввода окна InputBox;

Стр.умолч. – строковое значение в поле ввода, которое будет показано по умолчанию при открытии окна;

X, Y – координаты левого верхнего угла окна в единицах twips(1440 twips = 1 дюйм, 567 twips = 1 см) по отношению к левому верх- нему углу экрана; если координаты не указаны, окно выводится примерно в центре экрана.

Дополним программу вводом данных с клавиатуры в окне InputBox :

S = InputBox(vbLF & "Напишите строку текста:", _

"Окно ввода. Студент Ваня Иванов", , 4000, 2000)

Kod = MsgBox (S, vbYesNoCancel+vbInformation, _ "Окно сообщений. Студент Ваня Иванов")

Здесь 2 запятые, т. к. пропущена

<Стр.умолч.>

Функция InputBox в данном примере имеет строку <Сообщение>, со- стоящую из двух частей: vbLF– константа языка VBS – код перехода на следующую строку, и текстового значения "Напишите строку текста:";эти две части объединены в одну строку с использованием оператора конкате- нации &.

Сохраним текст, как новый файл Prg2.vbs, откроем его двойным щелчком мышкой и увидим окно функции InputBox(рисунок 12.3). В поле ввода этого окна напишем новый текст (длиной более 256 символов) и

OK
нажмем кнопку , после чего появится окно, показанное на рисунке

12.4, в сообщении которого присутствует 256 символов значения перемен- ной S(если в первом окне нажать кнопку Отмена , сообщение в окне MsgBoxбудет отсутствовать).

 

Рисунок 12.3 – Пример использования функции InputBox


Рисунок 12.4 – Окно функции MsgBox

с показом текста, написанного в окне InputBox

В изложенном выше материале использовались такие осно- вополагающие понятия языка программирования, как строковые значения (символы между апострофами), стандартные константы окон и строковая константа vbLF– код перехода на новую строку, переменные (btn, S, Kod), операции присваивания (=) и конкатенации (& – объединение двух выра- жений любого типа в одну строку), функции с параметрами (MsgBox, InputBox).

Последующие лабораторные работы посвящены освоению использо- вания всех этих компонентов языка VBS.

 

Учебное задание

Написать программу для варианта задания, соответствующего номе- ру Вашего компьютера. Выполнить программу, сохранить ее текст и скриншоты окон в отчете. Все окна должны иметь заголовки следующего вида: «Окно ввода (или сообщений) <Фамилия имя отчество студента>».

1) Вывести в левый верхний угол экрана окно для ввода текстовой строки,

OK
показать эту строку в окне сообщений с одной кнопкой и значком

Information Mark. Затем в окне сообщений показать код нажатой кноп- ки при выходе из предыдущего окна.

2) Вывести на расстоянии 10 см по горизонтали и вертикали от левого верхнего угла экрана окно для ввода текстовой строки, показать эту строку в окне сообщений с кнопками Да и Нет и значком Exclamation Mark. Затем в окне сообщений показать код нажатой кнопки при выхо- де из предыдущего окна. Определить коды нажатия для всех кнопок.

3) Вывести в центре экрана окно для ввода текстовой строки, показать эту строку в окне сообщений с кнопками Повтор и Отмена и значком Stop Mark. Затем в окне сообщений показать код нажатой кнопки при выхо- де из предыдущего окна. Определить коды нажатия для всех кнопок.


4) Вывести примерно в правом нижнем углу экрана окно для ввода тек- стовой строки, показать эту строку в окне сообщений с кнопками Стоп, Повтор и Пропустить и значком Question Mark. Затем в окне сообще- ний показать код нажатой кнопки при выходе из предыдущего окна. Определить коды нажатия для всех кнопок.

5) Вывести в центре экрана окно для ввода текстовой строки, показать эту

OK
строку в окне сообщений с кнопками и Отмена и значком

Exclamation Mark. Затем в окне сообщений показать код нажатой кноп- ки при выходе из предыдущего окна. Определить коды нажатия для всех кнопок.

6) Вывести примерно в правом нижнем углу экрана окно для ввода тек- стовой строки, показать эту строку в окне сообщений с кнопками Да, Нет и Отмена и значком Question Mark. Затем в окне сообщений пока- зать код нажатой кнопки при выходе из предыдущего окна. Определить коды нажатия для всех кнопок.

7) Вывести на расстоянии 20 см по горизонтали и 15 см по вертикали от левого верхнего угла экрана окно для ввода текстовой строки, показать эту строку в окне сообщений с кнопками Стоп, Повтор и Пропустить и значком Information Mark. Затем в окне сообщений показать код нажа- той кнопки при выходе из предыдущего окна. Определить коды нажа- тия для всех кнопок.

8) Вывести примерно в правом верхнем углу экрана окно для ввода тек- стовой строки, показать эту строку в окне сообщений с кнопками Да, Нет и Отмена и значком Exclamation Mark. Затем в окне сообщений показать код нажатой кнопки при выходе из предыдущего окна. Опре- делить коды нажатия для всех кнопок.

9) Вывести слева примерно в центре по вертикали экрана окно для ввода текстовой строки, показать эту строку в окне сообщений с кнопками Стоп, Повтор и Пропустить и значком Question Mark. Затем в окне со- общений показать код нажатой кнопки при выходе из предыдущего ок- на. Определить коды нажатия для всех кнопок.

10) Вывести справа примерно в центре по вертикали экрана окно для ввода текстовой строки, показать эту строку в окне сообщений с кноп- ками Да и Нет и значком Information Mark. Затем в окне сообщений показать код нажатой кнопки при выходе из предыдущего окна. Опре- делить коды нажатия для всех кнопок.


Лабораторная работа № 13. Программирование на языке VBS. Типы данных. Константы. Переменные

Цель работы

Освоение понятий алгоритмического языка типы данных, константы и переменные.

 

Учебные вопросы

1. Типы и подтипы данных в языке VBS.

2. Константы в алгоритмическом языке.

3. Переменные в алгоритмическом языке.

 

Краткое изложение учебного материала

1 Типы и подтипы данных в языке VBS

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

Типы данных определяют:

 

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

 

В языке Microsoft Visual Basic Scripting Edition определен един- ственный тип данных – Variant. Это специальный тип, который может со- держать в себе различные виды информации. Все функции языка также возвращают данные типа Variant.

Различные виды информации, которая может содержаться в типе

Variant, называются подтипами.

В таблице 2.1 приведены подтипы данных, которые могут со- держаться в типе Variant.

Таблица 13.1 – Подтипы данных в языке VBS

 

Подтип Описание
Byte Целые числа в диапазоне от 0 до 255
Boolean Логические значения True или False
Integer Целые числа в диапазоне от -32768 до 32767
Long Целые числа в диапазоне от -2 147 483 648 до 2 147 483 647
Single Числа одинарной точности с плавающей точкой в диапазоне от -3.402823E38 до -1.401298E-45 для отрицательных значений; от

 

  1.401298E-45 до 3.402823E38 для положительных значений
Double Числа двойной точности с плавающей точкой в диапазоне от -1.79769313486232E308 до -4.94065645841247E-324 для отрица- тельных значений; 4.94065645841247E-324 до 1.79769313486232E308 для положительных значений
Currency -922 337 203 685 477.5808 до 922 337 203 685 477.5807
Date /(Time) Числа, которые представляют даты и время в диапазоне между 1-01-100 0:0:0 до 31-12-9999 23:59:59
Object Содержит объект
String Строка переменной длины, которая максимально может содер- жать 2 миллиона символов
Empty Неинициализированное значение (0 для числовых переменных, строка нулевой длины ("") для строковых переменных)
Null Содержит неверные для подтипа данные
Error Содержит номер ошибки

Функция VarType возвращает информацию о том, как данные со- хранены в типе Variant. Для преобразования одного подтипа в другой мо- гут использоваться соответствующие функции (Cbyte, Cdate, CSng, CDbl и др.).

Другие диалекты языка Visual Basic также имеют тип Variant, но наряду с ним могут определять переменные различных типов, таких же, как подтипыязыка VBS.

2 Константы в алгоритмическом языке

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

 

Константа– некоторое неизменяемое значение в тексте программы. Константа может иметь имя (идентификатор).

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

Const N = 1.15e-15 'числовая константа Const FIO = "Иванов Иван Иванович" 'текстовая константа Const Data_r = #05-13-1988 06:30:00# 'константа дата/время Const Time_r = #06:30:00# 'константа дата/время

Как видно из примера, для числовых констант разделителем целой и дробной части является точка, можно использовать экспоненциальный вид чисел (1.15e-15 = 1.15×10-15). Значения строковых констант следует писать между двумя кавычками (" "), даты и времени – между двумя знаками ре- шетки (# #).

В языке VBS существует достаточно большое количество предопре- деленных констант, которые сгруппированы по категориям:


Date Format Constants – определяют форматы дат и времени (например, vbGeneralDate – дата и время выводятся в формате, определяемом реги- ональными настройками системы);

MsgBox Constants – используются в функции MsgBoxи других диалоговых окнах (см. таблицу 13.1);

String Constants – определяют скрытые символы, используемые для ма- нипуляции со строками:

- vbCr – возврат каретки (Chr(13), переход в начало следующей стро- ки);

- vbLf – новая строка (Chr(10));

- vbCrLf – новая строка (Chr(13) + Chr(10));

- vbNewLine – новая строка (Chr(10) или Chr(13) + Chr(10));

- vbNullChar – символ с нулевым значением (Chr(0));

- vbNullString – строка с нулевым значением (Chr(0));

- vbTab – горизонтальная табуляция (Chr(9)) ;

- vbVerticalTab – вертикальная табуляция (Chr(11)) ;

VarType Constants – определяют форматы для различных подтипов (vbEmpty, vbNull, vbInteger, vbLong, vbSingle, vbSingle, vbCurrency, vbDate, vbString, vbObject, vbError, vbBoolean, vbVariant, vbDataObject, vbDecimal, vbByte, vbArray);

и многие другие.

3 Переменные в алгоритмическом языке

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

Все переменные в языке VBS имеют один тип – Variant и во время ис- пользования могут хранить данные разных подтипов.

 

 

Правила написания идентификаторов переменных, констант, названий процедур, функций, объектов, их методов и свойств сле- дующие:
1) идентификатор должен начинаться с латинской буквы;
2) может состоять из латинских строчных и прописных букв, цифр и символа подчеркивания;
3) длина его – не более 255 символов; 4) буквы в верхнем и нижнем регистре не различаются;
5) он должен быть уникален в области определения.

Для объявления переменных могут служить выражения:

Dim X, Y, Z

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.