close

Вход

Забыли?

вход по аккаунту

?

Inf VB first

код для вставкиСкачать
Министерство общего и профессионального образования Российской Федерации Уральский государственный технический университет ВАША ПЕРВАЯ ПРОГРАММА НА MICROSOFT VISUAL BASIC Методические указания к лабораторной работе по курсу “Информатика” для студентов всех форм обучения специальностей 200700 – Радиотехника; 201500 – Бытовая радиоэлектронная аппаратура Екатеринбург 1999
УДК 519.95 Составители В.А.Добряк, В.Д.Нехорошев Научный редактор доц., канд. техн. наук В.И.Елфимов ВАША ПЕРВАЯ ПРОГРАММА НА MICROSOFT VISUAL BASIC:
Методиче-
ские указания к лабораторной работе по курсу “Информатика”/ В.А.Добряк, В.Д.Нехорошев. Екатеринбург: Изд-во УГТУ, 1999. 28 с. Методические указания предназначены для студентов, которые не имеют навыков работы с современными средствами разработки программного обеспече-
ния. Содержат введение в систему программирования Microsoft Visual Basic 6.0, пояснения к разработке учебного приложения под Windows и задания для само-
стоятельной работы. Библиогр.: 5 назв. Рис. 18. Подготовлено кафедрой радиоприёмных устройств. © Уральский государственный технический университет, 1999 3 СОДЕРЖАНИЕ 1. ЦЕЛЬ И СОДЕРЖАНИЕ РАБОТЫ........................................................................4 2. ЗАДАНИЕ ДЛЯ ДОМАШНЕЙ ПОДГОТОВКИ...................................................4 3. MICROSOFT VISUAL BASIC...................................................................................5 3.1. Запуск программы..................................................................................................5 3.2. Экранные элементы................................................................................................7 3.2.1. Строка меню....................................................................................................8 3.2.2. Линейка инструментов...................................................................................9 3.2.3. Окно проекта.................................................................................................10 3.2.4. Окно формы и окно элементов управления................................................10 3.2.5. Окно свойств..................................................................................................13 3.2.6. Окно положения формы...............................................................................14 4. СОЗДАНИЕ ИНТЕРФЕЙСА ПОЛЬЗОВАТЕЛЯ...............................................15 4.1. Определение свойств формы...............................................................................15 4.1.1. Свойство Caption...........................................................................................15 4.1.2. Свойство Visible............................................................................................15 4.1.3. Свойство BorderStyle....................................................................................15 4.1.4. Свойство Name..............................................................................................16 4.2. Ввод элементов управления................................................................................16 4.2.1. CommandButton..............................................................................................16 4.2.2. TextBox............................................................................................................17 5. СОСТАВЛЕНИЕ КОДА..........................................................................................18 5.1. Процедуры обработки событий..........................................................................18 5.2. Объявление процедуры........................................................................................19 5.3. Объявление переменных......................................................................................21 5.4. Исполняемые операторы.....................................................................................22 6. ВЫПОЛНЕНИЕ ПРОГРАММЫ...........................................................................23 7. МОДЕРНИЗАЦИЯ ПРОГРАММЫ.......................................................................24 8. ЗАДАНИЯ ДЛЯ САМОСТОЯТЕЛЬНОЙ РАБОТЫ.........................................26 9. СОХРАНЕНИЕ ПРОГРАММЫ.............................................................................27 БИБЛИОГРАФИЧЕСКИЙ СПИСОК......................................................................27 4 1. ЦЕЛЬ И СОДЕРЖАНИЕ РАБОТЫ Целью работы является изучение основ системы программирования Microsoft Visual Basic 6.0 и приобретение начальных навыков разработки про-
граммного обеспечения для операционных систем Windows. Работа рассчитана на 4 часа домашней подготовки и 4 часа занятий в лабо-
ратории. При подготовке к работе изучаются основы Visual Basic. В лаборатории разрабатывается и отлаживается небольшая программа. Цель состоит в том, чтобы, не углубляясь пока в подробности, дать новичку первое представление о Visual Basic, дать возможность быстро получить конкретный результат. Полное представ-
ление, знания и умения появятся позже в процессе работы и изучения справочных материалов. Чтобы увидеть, насколько просто начать работать с Visual Basic и насколько легко можно научиться создавать приложения, имеющие все черты полноценных 32-разрядных программ, предназначенных для исполнения под Windows 95, 98 и Windows NT, Вам предлагается написать и отладить небольшую программу. При-
мер заимствован из [1]. Затем выполняются задания для самостоятельной работы. Отчёт о лабораторной работе не оформляется. Приём задания производится непосредственно на компьютере по предъявлению работающей, полностью отла-
женной программы и исходных текстов с комментариями. 2. ЗАДАНИЕ ДЛЯ ДОМАШНЕЙ ПОДГОТОВКИ Для эффективной работы в лаборатории изучите с помощью указанной в библиографическом списке литературы следующие вопросы: ! Назначение и история создания Visual Basic. Событийно-управляемое про-
граммирование. Использование готовых элементов. Разделение пользова-
тельского интерфейса и алгоритмической части программы. Понятия интер-
претатора и компилятора. ! Бит, системы счисления, представление символов, байты и слова. Типы дан-
ных: Integer, Long, Single, Double, Byte, String, Boolean, Variant. Диапазон и точность представления данных. Переменные и константы, их объявления. Соглашения по наименованию переменных в Visual Basic. Диапазон действия переменных и констант. ! Определение оператора. Оператор присваивания. Выражения. Тип выраже-
ния. Последовательность выполнения операций. Арифметические операции. Операции сравнения. Логические операции. Управление в программе. Опера-
торы ветвления. Циклы. Циклы со счётчиком. ! Формы и элементы управления. Свойства, методы и события объектов. Фор-
ма, её свойства, методы и события. Характеристика элементов управления: метка, текстовое окно, командная кнопка, таймер. ! Процедуры и функции. Объявление процедур и функций. Методы и процеду-
ры обработки событий. 5 3. MICROSOFT VISUAL BASIC Visual Basic предоставляет Вам простейший путь для создания программ в операционной системе Windows. Визуальное программирование, экранные формы и объекты управления избавляют от решения задач, связанных с обработкой собы-
тий в системе, с отображением и обновлением содержимого окон и т.п., в результа-
те чего можно сконцентрировать внимание на более важных вещах. В то же время Visual Basic является профессиональным средством разработ-
ки, поскольку позволяет писать достаточно сложные программы. При этом опти-
мальный путь быстрого создания профессиональных приложений состоит в ис-
пользовании “связки” Visual Basic – Visual C++. Оба продукта входят в состав Microsoft Visual Studio. В этом случае интерфейс программы и основные процеду-
ры пишутся на Visual Basic, а процедуры, критичные к времени выполнения, – на Visual C++, и оформляются в виде библиотек динамической компоновки (DLL). 3.1. Запуск программы Любая новая работа в Visual Basic, как и во всех современных компиляторах, начинается с создания нового файла проекта. Файл проекта содержит имена и пу-
ти всех исходных файлов, связанных с проектом, а также различные настройки. Visual Basic запускается из стартового меню Windows подобно остальным приложениям (рис. 1). В дальнейшем, когда Вы сохраните свой проект программы на диске компьютера, он может быть загружен автоматически при двойном щелчке по значку или ярлыку файла проекта. Рис. 1. Запуск программы 6 Во время запуска программы появится диалоговое окно New Project (Новый Проект), где предлагается выбрать тип проекта (рис. 2). Рис. 2. Диалоговое окно New Project Это окно можно также открыть, выполнив команду N
ew Project из меню F
ile (Файл). Visual Basic позволяет создавать проекты разных типов: ! Standard EXE - создаёт стандартный исполняемый файл. ! ActiveX EXE - создаёт исполняемый файл ActiveX. ! ActiveX DLL - создаёт ActiveX DLL файл. ! ActiveX Control - создаёт управляющий элемент ActiveX. ! VB Application Wizard (Мастер Прикладной Программы) - генерирует новую, полнофункциональную заготовку прикладной программы, из которой Вы можете сформировать более сложную прикладную программу. ! Любой проект с расширением .vbp (файл проекта), .vbz (файл мастера) или .vbg (проектная группа), который находится в каталоге vb\template\projects. В данный момент нас интересует проект типа Standard EXE. Выделите зна-
чок этого типа проекта и нажмите кнопку О
ткрыть. 7 3.2. Экранные элементы После запуска на экране появляется главное окно (Main Window) Visual Basic (рис. 3). Прежде чем перейти к проектированию, изучите окно, с которым будете работать при создании Вашей первой программы. Как видите, Visual Basic использует большинство тех же средств, что и дру-
гие программы для Windows. Это – строка меню (Menubar), линейка инструмен-
тов (Toolbar), содержащая кнопки для быстрого доступа к часто используемым операциям, а также рабочая область, предназначенная для формирования програм-
мы. Рис. 3. Вид экрана после запуска Visual Basic В центре экрана находится окно объекта (Object) с заголовком Project1 - Form1 (Form), где находится пока пустая форма Вашего будущего приложения. Слева – инструментальная панель (Toolbox) элементов управления. Справа - окно проекта (Project), окно свойств (Properties) объектов и элементов управления, а под ним – окно положения формы (Form Layout) на экране монитора. 8 После первого запуска внешний вид экрана Visual Basic может отличаться от показанного. Дело в том, что, во-первых, некоторые из перечисленных окон могут быть не видны. Если это так, выполните следующие команды меню V
iew (Показ): ! Ob
ject – для включения окна с формой. ! P
roject Explorer – для включения окна проекта. ! Properties W
indow – для включения окна свойств. ! F
orm Layout Window – для включения окна располо-
жения формы на экране. ! Toolbox
– для включения инструментальной панели элементов управления. Во-вторых, перечисленные окна (кроме Ob
ject) могут быть в состоянии Dockable (Причаленный). В этом случае они “прилипают” к краям главного окна, как на рис. 3. Этот режим показа может быть включен через контекстное меню окон (рис. 4), которое “всплывает” после щелчка правой кнопкой мыши по окну. 3.2.1.
Строка меню В основном окне содержится строка с тринадцатью раскрывающимися ме-
ню. Некоторые меню являются почти типовыми (F
ile, E
dit, W
indow, H
elp), некото-
рые отражают специфику Visual Basic (P
roject, D
ebug, R
un и другие). Кроме того, имеются горячие клавиши, работающие так же, как и в других программах. Одно из самых важных - на период обучения - меню H
elp
(Справка). Оно служит для вызова интерактивной справочной системы Visual Basic. Здесь же мож-
но узнать, как связаться со службой технической поддержки программных продук-
тов корпорации Microsoft. Например, выбрав из меню H
elp команду C
ontens (Содержание), Вы попадё-
те в MSDN Library Visual Studio 6.0, где нас будет интересовать пока только актив-
ное подмножество Visual Basic Documentation. Имеется также возможность доб-
раться до необходимой информации через I
ndex (Указатель) и S
earch (Поиск). Кроме того, справочная система способна выдавать по ходу дела подсказку (она называется контекстно-зависимой). Если, работая в среде Visual Basic, Вы за-
хотите узнать о какой-то кнопке, диалоговом окне, списке или другом элементе управления, выделите этот элемент подсветкой, нажмите клавишу F1, и перед Ва-
ми появится необходимая информация. Меню F
ile
(Файл) является типовым для всех программ. В нём находятся команды, позволяющие создать, открыть, сохранить, распечатать проект или фор-
му, закрыть программу Visual Basic, и новая для Вас команда - Make Project1.exe, которая позволяет создать исполняемый (EXE) файл для приложения. Меню E
dit
отвечает за редактирование, то есть позволяет выделять, копиро-
вать, удалять, перемещать, вставлять объекты из буфера обмена и является почти полностью стандартным. С помощью меню V
iew
(Вид или Показ) можно включать различные компо-
ненты Visual Basic. Рис. 4. Вклю-
чение режи-
ма Dockable 9 Так как приложение может состоять из нескольких форм или модулей, то Вам в будущем пригодится меню P
roject (Проект). С его помощью можно доба-
вить в проект новую форму, модуль, либо удалить ненужные компоненты. Меню D
ebug
(Отладка) позволяет проследить за выполнением действий программы по шагам, указать точки останова программы, а также проследить за изменениями значений переменных программы во время пошагового выполнения. В меню R
un
(Выполнить) находятся команды старта разрабатываемой про-
граммы на выполнение, запуска программы с полной компиляцией, паузы, оконча-
ния выполнения программы и её перезапуска. В меню T
ools
(Инструменты) находится команда M
enu Editor, которая по-
зволит Вам в будущем создавать свои собственные меню в разрабатываемых про-
граммах. При вызове команды O
ptions открывается диалоговое окно, где на шести вкладках сосредоточены все настройки Visual Basic. Команды из меню W
indow
отвечают за расположение окон объектов и кода в пределах главного окна Visual Basic. Систему меню Вы освоите в процессе разработки программы. 3.2.2.
Линейка инструментов Под строкой меню в основном окне находится линейка инструментов. Её кнопки (рис. 5) предназначены для быстрого вызова часто используемых команд меню Visual Basic. Например, вместо того чтобы открывать меню F
ile и выбирать из него команду O
pen Project (Открыть Проект), можно просто щёлкнуть одно-
имённую кнопку . Рис. 5. Линейка инструментов Линейка инструментов имеет своё контекстное меню, вызываемое щелчком правой кнопки мыши по линейке (рис. 6).
В данный момент включена стандартная линейка (Stan-
dard). В будущем можно будет в случае необходимости вклю-
чить линейку отладчика (Debug), редактирования (Edit), ре-
дактора формы (Form Editor). Более того, Вы можете настро-
ить свою собственную линейку инструментов (C
ustomize). Линейка инструментов в Visual Basic выполнена в со-
ответствии со стандартами, используемыми последним поко-
лением программ, то есть с оперативным представлением ин-
формации о назначении каждой кнопки (ToolTip). Это проис-
ходит, если включен параметр Show T
oolTips (Показать ToolTips) на вкладке General диалогового окна Options, кото-
рое вызывается через меню T
ools командой O
ptions. Рис. 6. Контекст-
ное меню линейки 10 Справка. ToolTip – оперативная подсказка об объекте, которая представ-
ляется в виде небольшой жёлтой этикетки с текстом. Она “всплывает”, если курсор в течение одной-двух секунд задерживается на объекте. 3.2.3.
Окно проекта Окно проекта Project (рис. 7) содержит список всех файлов, необходимых для выполнения создаваемой программы. Если окно проекта на экране отсутствует, то выполните команду P
roject Explorer из меню V
iew или нажмите кнопку на линейке инструментов Toolbar.
И хотя Вы не набрали пока ни одной строчки кода, в окне уже присутствует один компонент. Ему присвоено имя Form1, которое показывает, что в данный момент открыт одноименный файл, свя-
занный с формой под рабочим названием Form1. Если Вы сохраните форму на диске, не изменив имя, предлагаемое по умолчанию, Visual Basic так и будет пользоваться этим файлом - Form1.frm. В общем случае приложение состоит из множества форм, каждая из которых хранится в отдельном файле. Файл формы автономен и поэтому может быть использован в других приложениях. В окне проекта имеются две кнопки: View Code (Просмотр Кода) и View Object (Просмотр Формы). По умолчанию Visual Basic (если Вы выберете в ок-
не проекта какой-нибудь файл) показывает соответствующую форму. Этот режим просмотра предназначен для разработки интерфейса пользователя (user interface) - того компонента приложения, с которым будет работать пользователь и тем самым взаимодействовать с Вашей программой. Щелчок кнопки View Code в окне проекта - и в отдельном окне появится код (code) из выбранного файла. Под кодом подразумевается набор операторов языка программирования, а само программирование иногда называют ко-
дированием (coding). Таким образом, создание программы в Visual Basic состоит из двух взаимосвязанных процессов: конструирования формы, с которой пользователь будет “вести диалог”, и кодирования, определяющего характер работы программы. Для перехода из окна кода в окно формы достаточно щёлкнуть мышью в лю-
бое место формы или кнопку View Object в окне проекта. Третья кнопка группирует компоненты проекта в папки по типу. 3.2.4.
Окно формы и окно элементов управления Форма (form) — это окно будущего приложения. Когда Вы приступаете к новому проекту, Visual Basic создаёт пустую форму в окне Object и присваивает ей заголовок Form1 (рис. 3). В процессе разработки приложения эта форма служит холстом, на котором Вы рисуете различные части программы - объекты (objects) или элементы управления (controls): окна, списки, кнопки, переключатели, линейки прокрутки и т.д.
Рис. 7. Окно проекта 11 Элементы управления создаются на основе инструментов из окна Toolbox (Инструментарий), показанного на рис. 3. Если Toolbox на экране отсутствует, то выполните команду Toolbox
из меню V
iew или нажмите кнопку на линейке ин-
струментов Toolbar. Каждый элемент управления представлен своей кнопкой. Стандартные эле-
менты управления: Pointer (Указатель) Единственный элемент, который не выводится на форму. С его помощью можно только изменять размеры или перемещать другие элементы управления на форме. PictureBox (Окно Рисунка) Отображает графические изображения (декоративные или активные), может служить контейнером вывода графическими методами или контейнером для дру-
гих средств управления. Label (Метка) Служит для вывода текста надписей на форме, которые пользователь Вашей программы не может изменить. TextBox (Текстовое Окно) Отображает текст, который пользователь может вводить или редактировать. Frame (Рамка) Создаёт графическую или функциональную группировку элементов управ-
ления. Для создания группировки на форме сначала отображается элемент Frame, а затем внутри него размещаются элементы управления. CommandButton (Командная Кнопка) Создаёт кнопку для выполнения команд. CheckBox (Флажок) Создаёт флажок, с помощью которого пользователь может легко указать, ис-
тинно ли что-нибудь или ложно, или отображает возможность выбора более чем одной альтернативы. OptionButton (Переключатель) Используется для отображения возможности альтернативного выбора. ComboBox (Окно Комбинированного Списка) Используется для вывода комбинированного списка и текстового поля. Пользователь может выбирать элемент из списка или вводить значение в текстовое поле. ListBox (Окно Списка) Используется для отображения списков элементов, из которых пользователь может выбрать необходимый. Список может быть прокручен, если содержит большее количество элементов, чем может быть показано. 12 HScrollBar
(Горизонтальная Полоса Прокрутки) Графический инструмент для быстрой навигации в широких списках, для индикации текущей позиции на шкале; используется так же, как устройство ввода данных, индикатор быстродействия или количества. VScrollBar
(Вертикальная Полоса Прокрутки) Графический инструмент для быстрой навигации в длинных списках, для индикации текущей позиции на шкале; используется так же, как устройство ввода данных, индикатор быстродействия или количества. Timer (Таймер) Генерирует события таймера через заданный интервал времени. Этот эле-
мент управления невидим в режиме выполнения программы. DriveListBox (Список Дисков) Отображает доступные дисководы. DirListBox
(Список Каталогов) Отображает каталоги и пути. FileListBox (Список файлов) Отображает список файлов. Shape (Фигура) Предназначен для вывода на форму различных фигур в режиме проектиро-
вания. Вы можете выбрать прямоугольник, округлённый прямоугольник, квадрат, округлённый квадрат, овал или круг. Line (Линия) Используется для вывода на форму линий различного типа в режиме проек-
тирования. Image (Окно Изображения) Отображает графическое изображение из bitmap, icon или metafile на форме. Изображения, отображаемые в этом элементе управления, могут быть только деко-
ративными и используют меньшее количество ресурсов, чем PictureBox. Data (Данные) Обеспечивает доступ к данным в базах данных через связанные средства управления на вашей форме. OLE
Связывает и внедряет объекты из других прикладных программ по техноло-
гии OLE. Окно Toolbox отображает стандартные элементы управления Visual Basic, а также любые элементы управления ActiveX и подключаемые к проекту объекты. Вы можете: 13 ! Отобразить ToolTips для кнопок Toolbox, если включен параметр Show T
oolTips (Показать ToolTips) на вкладке General диалогового окна Options, которое вызывается через меню T
ools командой O
ptions. ! Настроить Toolbox, добавляя вкладки. ! Настроить вкладку General или заказную вкладку, добавляя элементы управ-
ления с помощью команды Co
mponents из меню P
roject. Окно инструментария можно расширить за счёт подключения дополнитель-
ных элементов. Каждый файл типа OCX позволяет ввести в него один или не-
сколько новых инструментов. В профессиональный вариант Microsoft Visual Basic входит ряд дополнительных файлов типа OCX. Кроме того, Вы можете сами созда-
вать элементы управления. Инструментальные средства предлагаются также сто-
ронними поставщиками. Таким образом, Вы создаёте “лицо” своей программы, выбирая из окна ин-
струментария нужные элементы управления и размещая их на форме. Учтите, что при конструировании приложения Visual Basic функционирует совсем иначе в
сравнении с моментом запуска приложения. На этапе разработки Visual Basic предлагает ряд средств, помогающих создавать экранные объекты и составлять программу. Вы управляете объектами на форме, изменяя их размер, позицию и
другие атрибуты. Однако объекты неактивны, и код не исполняется. Например, поместив объект “линейка прокрутки” на форму, можно изменить его размер и по-
зицию, но прокрутить с его помощью ничего нельзя. При запуске законченного приложения Visual Basic убирает весь инструмен-
тарий Toolbox. Компоновка элементов управления окна фиксируется, объекты на экране
теперь разрешается активизировать, и Вы можете работать с программой так, как задумали. Приложение берет управление на себя, а Visual Basic лишь ис-
полняет операторы вашей программы. В окне заголовка основного окна Visual Basic напоминает, чем Вы занимаетесь: проектируете программу (design) или вы-
полняете её (run). 3.2.5.
Окно свойств Понятие свойства (properties) в Visual Basic связано с механизмом формаль-
ного описания атрибутов объекта. Каждый объект имеет специфические свойства, параметры которых определяют его внешний вид и поведение в приложении. Некоторые свойства ограничены определенными значениями. Скажем, у объекта, обладающего свойством Visible (Видимость), лишь два параметра: True (Истина) (объект видим) и False (Ложь) (объект невидим). Другие свойства могут иметь практически неограниченный набор параметров. Возьмите, например, назва-
ние окна формы. Но нет никакой необходимости описывать все свойства каждого объекта: в большинстве случаев Вас вполне устроят параметры, установленные по умолчанию. Хотя многие свойства допускается изменять как при разработке, так и при выполнении программы, окно Properties (Свойства), показанное на рис. 8, активно только на стадии проектирования. Это окно можно активизировать по-разному: выбором из меню V
iew команды Properties W
indow, клавишей F4 или кнопкой на линейке инструментов. 14 Раскрывающийся список (drop-down list box) в верхней части окна Properties, от-
ражающий имена и типы объектов, вклю-
ченных в приложение, называется списком объектов (object box). Изначально здесь содержится лишь информация о форме, но по мере того, как Вы размещаете на ней элементы управления, Visual Basic регист-
рирует их в этом списке. Под списком объектов - список с те-
кущими параметрами свойств выбранного объекта. Их значения легко изменить: вве-
дите новое в поле параметров или выберите один из предлагаемых вариантов в списке (их набор зависит от конкретного свойст-
ва). Описание (description) в нижней час-
ти окна содержит краткую справку о вы-
бранном свойстве. 3.2.6.
Окно положения формы В окне Form Layout (рис. 9) Вы можете визуально установить положение всех форм во время разработки. Если окно на экране отсутствует, то выполните команду F
orm Layout Window из меню V
iew или нажмите кнопку на линейке инструментов Toolbar. Если поместить курсор поверх миниатюрного изображения формы в окне Form Layout, его вид изме-
нится на . Нажав левую кнопку мыши, можно помес-
тить форму там, где она должна появиться во время вы-
полнения приложения. Когда Вы изменяете размеры окна Form Layout, каждая форма масштабируется относительно размера окна проекта. Верхний левый угол клиентской области имеет координаты (0, 0) рабочего стола Windows. Вы можете моделировать изменение разрешаю-
щей способности, используя команду Resolution Guide (Задать разрешение) из контекстного меню, которое вы-
зывается щелчком правой кнопки мыши. Установите окно будущего приложения в центре. После этого окно Form Layout можно закрыть для того, чтобы освободить место на экране. Рис. 8. Окно свойств Рис. 9. Окно по-
ложения формы 15 4. СОЗДАНИЕ ИНТЕРФЕЙСА ПОЛЬЗОВАТЕЛЯ Чтобы лучше усвоить, как пользоваться вышеописанными окнами, создавая приложение, попробуем подготовить первый проект. Составим программу для замера времени - аналог секундомера. У секундо-
мера есть кнопка, нажав которую, начинают отсчёт времени; еще одна кнопка – для остановки. Показания считываются с циферблата. Эта модель и ляжет в основу нашей программы. В Visual Basic роль циферблата и кнопок сыграет форма. Но проектирование приложения лучше начать с изучения свойств формы - ведь неко-
торые из них придется изменить. 4.1. Определение свойств формы В дальнейшем, после запуска разрабатываемой программы форма будет ото-
бражена в стандартном окне приложения. Если Вы хотите, чтобы оно было похоже на окна других приложений,
написанных для Windows, окно должно обладать на-
бором аналогичных характеристик (атрибутов). Например, названия всех приложе-
ний Windows выводятся в строку заголовка. В
Visual Basic многие из таких атрибу-
тов контролируются свойствами объектов. Чтобы перейти к определению свойств формы, сделайте её текущим
объек-
том, щёлкнув где-нибудь в окне с заголовком Form1. 4.1.1.
Свойство Caption Изменить название формы можно щелчком свойства Caption (Название) в списке Properties (Свойства). Замените его на Stopwatch (Секундомер). Новое на-
звание будет показано и в списке Properties, и в строке заголовка окна формы. 4.1.2.
Свойство Visible Выбор свойства, способного принимать лишь определенные значения, пре-
вращает поле параметров в раскрывающийся список. Прокрутите, к примеру, спи-
сок Properties и выберите свойство Visible (Видимость). Появится указывающая вниз стрелка , расположенная на правой стороне поля параметров. Значит, круг параметров данного свойства ограничен вариантами, предложенными в списке: True и False. Убедитесь, что свойству Visible присвоено значение True. 4.1.3.
Свойство BorderStyle Другое свойство, связанное с внешним видом формы, - BorderStyle (Тип Границ) - определяет, можно ли масштабировать данное окно при выполнении приложения. Поскольку внешний вид нашей программы жестко задан, в этом нет необходимости. Выбрав BorderStyle из списка, присвойте ему одно из предлагае-
мых значений: 1 - Fixed Single (Одинарная Фиксированная), для чего раскройте список в поле параметров и щёлкните вариант с таким названием. Так как параметр Fixed Single запрещает масштабирование окна, в окне не будет кнопок Minimize (Свернуть) и Maximize (Развернуть). 16 4.1.4.
Свойство Name Любой объект в Visual Basic обладает свойством Name (Имя). Выбрав его, Вы присвоите объекту идентификатор и сможете пользоваться им в программе для ссылки на этот объект. В окне формы доступ к объекту прост - достаточно щёлк-
нуть его мышью. Но в кодовой части программы допускаются лишь ссылки на объект по имени, указанному с помощью свойства Name. Свойства Name и Caption неодинаковы. Имя объекта используется в программном коде как идентификатор, а название объекта видимо на экране. Выберите в списке Properties свойство Name. Замените его названием своей формы, например, MyForm. Примечание. Изменение имени формы отражается и в списке файлов в ок-
не проекта. Помните: определение каждой формы хранится в отдельном файле. При сохранении приложения его можно поместить в любой файл, но по умолча-
нию Visual Basic всегда предлагает имя, присвоенное форме. 4.2. Ввод элементов управления 4.2.1.
CommandButton Вернёмся к нашей форме и создадим две кнопки: для запуска и остановки секундомера. 1.
Щёлкнув инструмент CommandButton (Командная Кнопка) в окне Toolbox, переместите указатель мыши в пустое окно формы. Он превратится в перекре-
стие, подсказывая, что в данный момент активен режим вычерчивания. 2.
Установите указатель вблизи верхнего левого угла формы. 3.
Нажав и не отпуская кнопку мыши, переместите указатель вниз и вправо. 4.
Отпустите кнопку мыши. Как только Вы отпустите кнопку мыши, в выбранной Вами прямоугольной области Visual Basic создаст объект CommandButton (рис. 10). После того, как Вы создали командную кнопку, в окне инструментария вновь активи-
зируется инструмент Pointer (Указатель), а это значит, что можно редактировать форму: “перетаскивать” объекты на другие места или изменять их размеры, используя маркеры. Ес-
ли маркеров нет, выделите объект щелчком мыши. Теперь “нарисуем” вторую командную кнопку, но на этот раз более эффективным способом: дважды щёлкнув в окне Toolbox инструмент CommandButton. Visual Basic создаст кнопку с размерами по умолчанию и поместит её в центр формы. Пе-
ретащите кнопку влево, пониже первой и отмасштабируйте, чтобы обе кнопки вы-
глядели одинаково. Рис. 10. Так выглядит только что созданная ко-
мандная кнопка 17 Эти кнопки, обозначенные по умолчанию Command1 и Command2, послужат в приложении Stopwatch кнопками “старт” и “стоп”. Разумеется, их названия надо изменить в соответствии с назначением. Действуйте при этом, как и при определе-
нии свойств формы: 1.
Выделите верхнюю командную кнопку щелчком мыши. 2.
Выберите свойство Caption из списка в окне Properties. 3.
В поле параметров введите название Start. 4.
Щёлкните нижнюю командную кнопку и присвойте её свойству Caption значе-
ние Stop.
Хотя Вы только что изменили названия кнопок, надо ещё изменить и имена кнопок, чтобы в программном коде на них можно было ссылаться. Старайтесь
не забывать, что свойства Caption и Name - это не одно и то же. Модификация одного свойства не приведёт к модификации другого. Так что снова щёлкните верхнюю командную кнопку и замените значение, установленное по умолчанию (Command1), на btnStart. Так же присвойте нижней кнопке имя btnStop. Примечание. В разрабатываемом приложении Stopwatch нет необхо-
димости изменять имена кнопок, но в тексте программы ссылки на btnStart будут гораздо понятнее, чем на Command1. Если Вы не использовали осмысленные иден-
тификаторы, то, вернувшись после полугодового перерыва к своей программе, даже не поймёте, что она делает. Самое лучшее - присваивать объектам такие имена, которые соответствуют контексту и несут некоторую описательную на-
грузку. Например, имена btnStart и btnStop имеют трехбуквенную приставку, идентифицирующую тип объекта в программном коде, и второй компонент - четко описывающий назначение объектов. 4.2.2.
TextBox Теперь, разместив на форме элементы управления для приложения Stopwatch, зарезервируйте место, где будут отражаться результаты работающей программы. Создайте несколько текстовых окон: 1.
Дважды щёлкните в окне Toolbox элемент TextBox (Текстовое Окно) - в центре формы появится текстовое окно. 2.
Переместите его в верхнюю часть окна формы, справа от командных кнопок. 3.
Точно так же создайте еще два текстовых окна и расположите их, как показано на рис. 11. 4.
“Зацепив” указателем мыши правый ниж-
ний угол формы, сожмите форму так, что-
бы её границы плотно “обжали” кнопки и текстовые окна. Новым объектам нужно присвоить име-
на. Выделяя щелчком мыши каждое текстовое окно по очереди, изменим значения их свойств Name: верхнее - txtStart; в середине txtStop; нижнее txtElapsed. Рис. 11. Форма после ввода текстовых окон 18 Теперь уберите из них текст, предлагаемый по умолчанию, удалив значения свойств Text из Properties. Это приведет к тому, что значением свойства Text у ка-
ждого текстового окна станет признак “пусто” (текстовая строка нулевой длины). Итак, Вы подготовили в программе интерфейс пользователя - все его элементы на своем месте. При-
ложение можно “запустить” даже в таком состоянии. Выберите из меню R
un (Выполнение) команду S
tart (Старт), или нажмите одноимённую кнопку на линей-
ке инструментов , или нажмите клавишу F5 на кла-
виатуре. В результате окна Toolbox, Properties и Form Layout исчезнут. Их заменит окно запущенной про-
граммы Stopwatch (рис. 12). Вы можете подвигать его по экрану и пощёл-
кать кнопки Start и Stop. Пока это ничего не даст, так как Вы же еще не составили программный код для от-
счёта времени. Поэтому, вдоволь насмотревшись на свое первое творение, выберите в Visual Basic из меню R
un команду E
nd (Конец) или щёлкните одноимённую кнопку на линейке инстру-
ментов , чтобы выйти из приложения и вернуться в режим проектирования (design) Visual Basic. Примечание. Не всякий запуск программы проходит так легко. Если в про-
грамме допущены ошибки, которые приводят к “зависанию” системы, то прихо-
дится перегружаться. В этом случае несохранённые файлы теряются. Чтобы этого не происходило, выберите из меню T
ools команду O
ptions и в диалоговом ок-
не Options на вкладке Environment установите флажок Pr
ompt To Save Changes. Теперь при каждом запуске программы будет выдаваться запрос на сохранение проекта. Подробно сохранение проекта описано в разделе 9. 5. СОСТАВЛЕНИЕ КОДА Кодирование - написание операторов языка, управляющих выполнением программы, - центральное звено в любой модели программирования. Закончив соз-
дание интерфейса приложения, нужно заставить программу работать. 5.1. Процедуры обработки событий Вы уже знаете о свойствах объекта и о том, как их модифицируют, чтобы изменить объект. Примерно так же любой объект можно связать с набором проце-
дур, исполняемых в строго определенные моменты. Процедура (procedure) - это группа операторов в языке программирования Visual Basic. Исполняется процедура - исполняются и её операторы. Так или иначе, весь составленный Вами исполняе-
мый код (executable code) обязательно помещается в какую-нибудь процедуру. Процедура, присвоенная объекту, связана с определенным событием (event), или действием и поэтому называется процедурой обработки события (event procedure). Событиями считаются, например, Click (Щелчок) (это действие вызы-
вается щелчком кнопки мыши) или Resize (Изменение Размера) (оно возникает при Рис. 12. Окно при-
ложения в период выполнения 19 изменении размера окна формы). События происходят только в период выполнения (Runtime), но не проектирования. И последнее: “вокруг” одного объекта может происходить не одно, а несколько событий. Дважды щёлкните кнопку Start в окне формы, и на экране появится окно ко-
да (code window), примерно такое, как на рис. 13. Окно кода названо MyForm, что указывает на взаимосвязь кода и формы. Код, который будет введен в это окно, будет храниться в том же файле, что и экранные объекты фор-
мы. В поле Object (Объект) - в ле-
вой верхней части окна кода - выво-
дится имя выбранного Вами объекта, в данном случае – btnStart. Слева – поле Procedure (Процедура); в нём да-
ется название процедуры, которую Вы редактируете. Пока Вы никакой не выбрали, Visual Basic по умолча-
нию предлагает наиболее вероятную – процедуру обработки события Click. В левой нижней части окна кода находятся две кнопки , управляющие режимом показа кода: Procedure View (Показ Процедуры) и Full Module View (По-
каз Всего Модуля). Процедура, отображаемая в окне кода, - та, что будет исполняться при щелч-
ке кнопки Start (разумеется, при работе приложения). И хотя Вы еще не ввели ни-
какого кода, в текстовом поле окна кода уже есть два оператора: Private Sub btnStart_Click() End Sub Когда Вы создали командную кнопку, Visual Basic подготовил для этого объекта набор процедур обработки событий по умолчанию. Процедуры по умолча-
нию не делают ровным счётом ничего; они состоят лишь из объявления (declaration) процедуры (первая строка) и оператора, помечающего конец процеду-
ры (последняя строка). 5.2. Объявление процедуры В объявлении процедуры ключевое слово Private Sub обозначает начало процедуры, область видимости которой ограничена данным модулем формы. Далее следует имя процедуры (в данном случае – btnStart_Click) и, наконец, круглые скобки. Имя этой процедуры составлено так, чтобы отличить её от других. Дело в том, что не все процедуры предназначены для обработки событий. С помощью Visual Basic можно создать процедуру и присвоить ей любое имя. Но, присваивая имя процедуре обработки события, соблюдайте такие правила: Рис. 13. Окно кода 20 ! Первая часть имени должна соответствовать имени объекта, который Вы соз-
дали на форме (или должно присутствовать слово Form, когда объектом яв-
ляется сама форма). ! Последняя часть имени должна включать имя события. ! В обе части следует разделять знаком подчеркивания (_). Таким образом, процедура btnStart_Click связана с объектом “командная кнопка Start” (btnStart) и предназначена для обработки события Click. При выпол-
нении программы сценарий развивается примерно так. Окно приложения находит-
ся на экране и ожидает появления события. Пользователь мышью указывает на изображение кнопки на экране и щёлкает кнопкой. Windows передает это сообще-
ние программе. Когда Visual Basic перехватывает событие (щелчок верхней кнопки с именем btnStart), он обращается к процедуре btnStart_Click и исполняет заклю-
ченные в ней операторы. А на Вас как на программиста возлагается обязанность решить, какие там будут операторы. Чтобы получить представление о том, как это всё работает, введите новый оператор: Debug.Print “Привет”. Текст процедуры в окне кода теперь должен вы-
глядеть так: Private Sub btnStart_Click() Debug.Print "Привет" End Sub Примечание: Профессиональный стиль оформления листингов программ предполагает хорошую читаемость текста. Обратите внимание: вложенная в процедуру строка смещена на величину табуляции (4 пробела по умолчанию). Вы можете изменить величину табуляции Tab Width во вкладке Editor (Редактор) в диалоговом окне Options (Параметры). Это окно (рис. 14) доступно по команде O
ptions из меню T
ools (Инструменты). Оператор Debug.Print заставит Visual Basic вывести текст в специальном ок-
не отладчика Immediate (Непосредственно). Нажав клавишу F5, выйдите из режима проектирования и запустите приложение (в том виде, как оно есть). Когда Вы щёлкнете кнопку Start, в окне Immediate появится слово Привет. Если это окно не появилось на экране, включите его через команду I
mmediate Window меню V
iew (Просмотр). Теперь выберите из меню R
un (Выполнение) команду E
nd (Конец). Visual Basic прекратит исполнение программы и вернется в режим проектирования, чтобы Вы продолжили работу над приложением. Только не забудьте убрать из процедуры строку с оператором Debug.Print “Привет”. Примечание. Обратите внимание: ключевые слова типа Private Sub, Debug, Print или End Sub выделяются в окне кода другим цветом, что облегчает поиск отдельных компонентов. Контроль над цветами осуществляет команда O
ptions из меню T
ools (вкладка Editor Format в окне Options). 21 Рис. 14. Диалоговое окно параметров 5.3. Объявление переменных При щелчке кнопки Start в окне приложения Stopwatch программа должна “узнать, который час” (т.е. стартовое время). А при щелчке кнопки Stop - вычесть из текущих показаний стартовые, то есть подсчитать, сколько времени прошло ме-
жду “нажатиями” кнопок Start и Stop. Вам надо составить код, позволяющий про-
грамме выполнить эти операции. В Visual Basic предусмотрена функция Now - она “сообщает” текущее время. Функция (function) - это особая процедура, которая возвращает (return) какую-
нибудь величину. Таким образом, после нажатия кнопки Start Ваша программа должна вызвать функцию Now, возвращающую текущее (стартовое) время. После этого программе необходимо “запомнить” эту величину, чтобы в дальнейшем, когда будет “нажата” кнопка Stop, вычесть её из конечного времени. Чтобы записать какое-то значение в программе, зарезервируйте соответст-
вующее место в памяти компьютера: объявите переменную (variable). Для этого в окне кода щёлкните указывающую вниз стрелку в правой части поля Object (Объ-
ект), чтобы раскрыть список всех объектов формы. Выберите из этого списка стро-
ку (General) (Общие), то есть не связанную с каким-либо конкретным объектом ка-
тегорию кода. В этом случае Visual Basic автоматически изменяет состояние поля Procedure (Процедура) - в нём появляется строка (Declarations) (Объявления). Она открывает доступ к разделу общих объявлений в программе. А теперь введите в окне кода такой текст: 22 Dim StartTime As Variant Dim EndTime As Variant Dim ElapsedTime As Variant Эти операторы резервируют место для хранения величин начального, конеч-
ного и истекшего времени в переменных StartTime, EndTime и ElapsedTime. Опера-
тор Dim сообщает Visual Basic, какой объём памяти следует выделить переменной и как её назвать. Оператор Dim считается объявлением: он указывает Visual Basic, какую подготовку надо провести перед выполнением программы. Каждый из трех операторов, показанных выше, объявляет по одной пере-
менной, и может быть записан в общем виде, как: Dim имя As Variant Dim и As — ключевые (зарезервированные) слова, имеющие для Visual Basic особый смысл. Записи операторов Dim различались только потому, что перемен-
ным необходимо присваивать разные имена. Ключевое слово Variant заставляет Visual Basic выделить объём памяти, достаточный для хранения любого значения. Можно воспользоваться и другими ключевыми словами; тогда объявление будет конкретнее, например, Integer. Примечание. Если Вы случайно ошибётесь при наборе текста программы в окне кода, Visual Basic выделит неправильный фрагмент кода и откроет инфор-
мационное диалоговое окно. Такой контроль, называемый автоматической про-
веркой синтаксиса (automatic syntax checking), происходит в тот момент, когда Вы нажимаете клавишу Enter. Visual Basic не в состоянии уследить за всеми ошибками, но синтаксические ошибки (syntax errors) он не пропустит. При жела-
нии автоматическую проверку можно отключить: выберите из меню T
ools ко-
манду O
ptions, и в диалоговом окне Options на вкладке Editor снимите флажок Auto Syntax Check
(рис. 14). Visual Basic способен работать и без описания переменных. В простых про-
граммах это оправдано. Но в сложных проектах эта особенность может привести к трудно выявляемым ошибкам. Поэтому в будущем обязательно проверяйте уста-
новку флажка R
equire Variable Declaration (Требовать Объявления Переменных) на вкладке Editor диалогового окна Options (рис. 14). 5.4. Исполняемые операторы Теперь, зарезервировав память для хранения показаний часов, приступим к написанию исполняемого кода программы. В отличие от объявления, как бы “на-
страивающего” программу, исполняемый оператор (executable statement) вызывает какие-то действия. Оператор Debug.Print, которым Вы недавно пользовались, от-
носится к их числу. Раскрыв список Object в окне кода, выберите объект btnStart. Отредактируй-
те процедуру btnStart_Click, введя между Private Sub btnStart_Click () и End Sub следующие операторы: 23 StartTime = Now txtStart.Text = Format(StartTime, "hh:mm:ss") txtStop.Text = "" txtElapsed.Text = "" Они будут выполнены при щелчке кнопки Start. В первой строке функция Now “сообщает” текущее время, значение которого записывается в область памяти с именем StartTime. В следующей строке показания часов выводятся в верхнее тек-
стовое окно (txtStart) - это достигается определением свойства Text данного объек-
та. Кроме того, функция Format устанавливает формат вывода времени (в часах, минутах и секундах). Ну, а в последних строках происходит очистка остальных текстовых окон (txtStop и txtElapsed) за счёт присвоения пустых строк свойствам Text соответствующих объектов. Наконец, чтобы закончить программу, выберите объект btnStop из списка Object и отредактируйте процедуру btnStop_Click: Private Sub btnStop_Click() EndTime = Now ElapsedTime = EndTime - StartTime txtStop.Text = Format(EndTime, "hh:mm:ss") txtElapsed.Text = Format(ElapsedTime, "hh:mm:ss") End Sub Процедура выполняется после щелчка кнопки Stop. Сначала функция Now возвращает текущее время, которое запоминается в переменной EndTime. В сле-
дующей строке значение переменной StartTime вычитается из EndTime и тем са-
мым вычисляется истекшее время. Затем величины конечного и истекшего време-
ни выводятся на экран, для чего они присваиваются свойствам Text объектов txtStop и txtElapsed. Как и в процедуре btnStart_Click, функция Format заставляет показывать время в часах, минутах и секундах. 6. ВЫПОЛНЕНИЕ ПРОГРАММЫ Чтобы запустить приложение, нажмите клави-
шу F5. Воспользуйтесь “секундомером”: щёлкните кнопку Start, подождите несколько секунд и щёлкните кнопку Stop. Результат должен выглядеть примерно так, как показано на рис. 15. При желании можно еще раз щёлкнуть Start, это приведет к повторному включению “секундомера”. Помимо уже известных Вам способов закрыть прило-
жение можно кнопкой в строке заголовка окна Stopwatch, а также нажав клавиши Alt+F4 или выбрав из Системного меню команду закрытия. Системное меню открывается щелчком значка в строке заголовка окна. Как видим, программа имеет все черты полно-
ценного приложения, работающего под Windows. Рис. 15. Окно при-
ложения после за-
пуска 24 7. МОДЕРНИЗАЦИЯ ПРОГРАММЫ Легко увлечься процессом программирования и забыть о пользователе, для которого предназначена программа. Возьмем, к примеру, интерфейс приложения Stopwatch: две кнопки, три текстовых окна. Понятия start и stop говорят сами за се-
бя, а какую информацию можно “выжать” из трех текстовых окон? Ясен первый недостаток интерфейса: текстовые окна должны иметь информативные названия. Инструмент Label (Метка) обозначен в окне Toolbox кнопкой . Выбрав его, нарисуйте на форме Stopwatch объект Label рядом с верхним текстовым окном. Но сначала придется, изменив размер формы, сдвинуть текстовые окна вправо, чтобы освободить место для меток. Все три текстовых окна можно выделить одно-
временно и переместить как группу; для этого щёлкните верхнее текстовое окно и, удерживая клавишу Ctrl, щёлкните остальные окна. Теперь активизируйте новый объект - Label, выделите в списке свойств Properties строку Caption, а в поле параметров введите Starting Time. Выделите под-
светкой в списке свойств строку Name, а в поле параметров введите lblStart. Ана-
логично создайте метки для других текстовых окон: lblEnd и lblElapsed (рис. 16). Что еще можно улучшить в интерфей-
се этой программы? Не знаете? Тогда запус-
тите еще раз приложение Stopwatch и щёлк-
ните кнопку Stop, проигнорировав Start. Профессионально написанное приложение обязано должным образом отреагировать на такую ошибку, но наше поведет себя очень странно: покажет все значения, кроме стар-
тового времени. Чтобы разрешить возник-
шую проблему, выйдите из приложения и вернитесь в режим проектирования. В данном случае самый простой вы-
ход - запретить доступ к кнопке Stop до тех пор, пока не “нажата” Start. В окне формы, щёлкнув Stop, выберите свойство Enabled (Доступ) и присвойте ему значение False. Теперь при запуске приложения кнопка Stop будет неактивной. Далее, открыв окно кода, отредактируйте процедуру btnStart_Click так, что-
бы она выглядела, как показано ниже. Вам придется всего лишь добавить две стро-
ки. Попутно добавим комментарии к тексту программы. Примечание. Профессиональный стиль программирования предполагает тщательное комментирование исходных текстов программ. Иначе Вы, вернув-
шись после полугодового перерыва к своей программе, опять не поймёте, что она делает. Все процедуры и функции должны начинаться с краткого описания функ-
циональных характеристик программы: что она делает, а не как. Должны быть даны описания входных и выходных параметров, глобальных переменных, которые изменяются в данной подпрограмме. Комментированию также подлежат все ло-
кальные переменные, циклы и ветвления. Строки комментария начинаются или строго над комментируемым блоком, или, если позволяет место, в строке. Рис. 16. Форма после ввода меток 25 Private Sub btnStart_Click() 'старт секундомера StartTime = Now 'фиксация времени txtStart.Text = Format(StartTime, "hh:mm:ss") 'очистка текстовых окон txtStop.Text = "" txtElapsed.Text = "" 'запрет/разрешение кнопок btnStop.Enabled = True btnStart.Enabled = False End Sub Новый код позволяет после щелчка кнопки Start активизировать Stop и сде-
лать недоступной кнопку Start; этим мы избавляемся от еще одной потенциальной проблемы: двойного щелчка Start. Отредактируем процедуру btnStop_Click, дополнив её двумя строками кода и комментариями: Private Sub btnStop_Click() 'стоп секундомера EndTime = Now 'фиксация времени ElapsedTime = EndTime - StartTime txtStop.Text = Format(EndTime, "hh:mm:ss") txtElapsed.Text = Format(ElapsedTime, "hh:mm:ss") 'запрет/разрешение кнопок btnStop.Enabled = False btnStart.Enabled = True End Sub Выберите в окне кода из списка Object (Объект) строку (General) (Общие), раздел (Declarations) (Объявления). Введите комментарии ко всем переменным: Dim StartTime As Variant 'время старта Dim EndTime As Variant 'время останова Dim ElapsedTime As Variant 'интервал времени Окончательный вариант интерфейса приложения представлен на рис. 17. Со-
стояние окна приложения говорит о том, что кнопка Start “нажата” и “секундомер” рабо-
тает. Обратите внимание, что внешний вид текстовых окон, в которые выводится время, в соответствии со стандартами Windows как бы приглашает отредактировать цифры вручную. Действительно, элемент TextBox позволяет это делать. Запустите программу, щёлкните в текстовое окно и введите с кла-
виатуры какие-нибудь цифры. Они появятся. Рис. 17. Заключительная версия интерфейса 26 Такая возможность в секундомере, который призван объективно фиксиро-
вать время, кажется по меньшей мере странной. Эту проблему можно решить, если установить свойству Locked (Блокиро-
ванный) у всех трёх текстовых окон значение True. Сделайте это и проверьте результат. Разумеется, только что внесенные изменения - лишь малая часть того, что можно сделать для улучшения программы. Простой пример: поскольку многие се-
кундомеры имеют одну кнопку, в приложении Stopwatch тоже стоило бы обойтись одной командной кнопкой, чтобы при каждом “нажатии” она меняла название со Start на Stop (и наоборот). Целесообразно также сделать так, чтобы время в тексто-
вых окнах “бежало”. Кроме того, использование элемента TextBox в нашей про-
грамме избыточно, так как для вывода времени достаточно элемента Label. И, на-
конец, секундомер может “тикать”. 8. ЗАДАНИЯ ДЛЯ САМОСТОЯТЕЛЬНОЙ РАБОТЫ ! Создайте “однокнопочный” вариант секундомера. ! С помощью элемента Timer из окна Toolbox попробуйте сделать так, чтобы после нажатия кнопки Start время Ending Time “бежало” (обновлялось не реже одного раза в секунду), а после нажатия кнопки Stop - останавлива-
лось. При этом появлялось бы ранее невидимое Elapsed Time. ! Секундомер должен “тикать” один раз в секунду. ! Секундомер должен иметь иконку в строке заголовка, соответствующую ха-
рактеру решаемой задачи. Например, иконка содержится в файле …\Microsoft Visual Studio\Common\Graphics\Icons\Misc\Timer01.ico. Справка. Простейший способ озвучивания программы – использование встроенного в системный блок компьютера динамика с помощью функции Beep. Таймеры - это объекты, способные инициировать события через регуляр-
ные промежутки времени. Для работы в программе должны быть размещены на форме, как и любой другой элемент из Toolbox. После запуска программы на форме не видны. Программируются присвоением определенных значений (в миллисекун-
дах) свойству Interval. Прерывание, возникающее от таймера, обрабатывается в процедуре: Private Sub Timer1_Timer() 'здесь могут быть размещены команды, которые 'будут выполняться по прерыванию от таймера End Sub Элемент может быть сделан невидимым на форме, если его свойству Visible (Видимость) присвоено значение False. Иконка, отображаемая в строке заголовка формы, в значке приложения и в ярлыке, может быть определена свойством формы Icon. 27 9. СОХРАНЕНИЕ ПРОГРАММЫ Знакомясь с Visual Basic, следует научиться сохранять программы на диске. Создайте в своей личной папке папку Stopwatch. Выберите из меню F
ile команду Sav
e Project (Сохранить Проект) или щёлкните одноимённую кнопку на линей-
ке инструментов. Если проект ещё не сохранялся, откроется диалоговое окно Save File As (Сохранить Форму Как), показанное на рис. 18. Укажите имя файла и папку, где будет храниться код и компоновка формы. Рис. 18. Сохранение формы Далее Visual Basic откроет аналогичное диалоговое окно Save Project As (Сохранить Проект Как) для записи файла проекта. Сохраните проект под именем Stopwatch. БИБЛИОГРАФИЧЕСКИЙ СПИСОК 1.
Нелсон Р. Running Visual Basic 3 for Windows: Пер. с англ. М.: Издательский от-
дел “Русская Редакция” ТОО “Channel Trading Ltd.”, 1995. 384 с. 2.
Арушанов Х.Р. Visual Basic 3.0 и Visual Basic 4.0 для Windows. М.: ABF, 1995. 368 с. 3.
Маккелви М. Visual Basic 4 (серия “Без проблем!”): Пер. с англ. М.: БИНОМ, 1996. 576 с. 4.
Гуревич Н., Гуревич О. Visual Basic 5 (серия “Без проблем!”): Пер. с англ. М.: БИНОМ, 1998. 590 с. 5.
Браун С. Visual Basic 5 с самого начала. СПб: Питер, 1998. 320 с. ВАША ПЕРВАЯ ПРОГРАММА НА MICROSOFT VISUAL BASIC Составители Добряк Вадим Алексеевич Нехорошев Виктор Дмитриевич Редактор И.В.Коршунова Подписано в печать 08.02.99 Формат 60х84 1/16 Бумага типографская Плоская печать Усл. п. л. 1,63 Уч.-изд. л. 1,56 Тираж 100 Заказ 37 Цена “С” Издательство УГТУ 620002, Екатеринбург, Мира, 19 ЗАО УМЦ УПИ. 620002, Екатеринбург, Мира, 17 
Автор
19911612
Документ
Категория
Без категории
Просмотров
103
Размер файла
508 Кб
Теги
inf_vb_first
1/--страниц
Пожаловаться на содержимое документа