МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РЕСПУБЛИКИ КАЗАХСТАН СЕМИПАЛАТИНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ имени ШАКАРИМА

advertisement
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ
РЕСПУБЛИКИ КАЗАХСТАН
СЕМИПАЛАТИНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
имени ШАКАРИМА
Документ СМК 3 уровня
УМКД
УМКД
УМКД 042-14.2.07.1.20.8/03Учебно-методические
Редакция №1 от
2012
материалы дисциплины
03.09.2012
«Практикум на ПЭВМ»
УЧЕБНО-МЕТОДИЧЕСКИЙ КОМПЛЕКС
ДИСЦИПЛИНЫ
«Практикум на ПЭВМ»
для специальности: 5В060200 – «Информатика»
УЧЕБНО-МЕТОДИЧЕСКИЕ МАТЕРИАЛЫ
Семей
20012
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
СОДЕРЖАНИЕ
1. Глоссарий
2. Лекции
3. Практические занятия
4. Самостоятельная работа студента
Страница 2 из 76
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 3 из 76
1. ГЛОССАРИЙ


New (Новый) — содержит шаблоны и мастера для создания нового проекта;
Existing (Существующий) — позволяет открыть ранее созданный проект или проекты-примеры,
поставляемые с Visual Basic 6. Вкладка имеет раскрывающийся список, с помощью которого можно
выбрать любую папку на имеющихся ресурсах компьютера;

Recent (Недавно созданный) — содержит список проектов, открывавшихся в последнее время;
Для создания нового проекта используется вкладка New. На ней можно выбрать один из следующих типов
шаблона проекта:

Standard EXE — стандартное выполняемое приложение;

ActiveX EXE — выполняемое приложение ActiveX;

ActiveX DLL — динамическая библиотека ActiveX;

ActiveX Control — элемент управления ActiveX;

VB Application Wizard — мастер приложений;

VB Wizard Manager — мастер создания пользовательских мастеров;

Data Project — проект управления б"азой данных;

IIS Application — приложение, размещаемое на сервере Web-узла (IIS — Internet Information Server);

Addin — надстройка, дополнительные утилиты, расширяющие возможности приложений;

ActiveX Document DLL — динамическая библиотека документов ActiveX;

ActiveX Document EXE — выполняемое приложение документов ActiveX;

DHTML Application — приложение, создающее динамические HTML-страницы.
2. ЛЕКЦИИ
Лекция 1. Первое знакомство с Visual Basic 6.0
Содержание лекционного занятия:
Главное меню
Стандартная панель инструментов
Окно конструктора форм
Панель элементов управления
Главное меню, как и во всех приложениях Microsoft, представляет собой линейку раскрывающихся меню.
Оно содержит следующие основные команды: File (Файл), Edit (Правка), View (Вид), Project (Проект),
Format (Формат), Debug (Отладка), Run (Запуск), Query (Запрос), Diagram (Диаграмма), Tools (Сервис),
Add-Ins (Надстройки), Window (Окно), Help (Справка). Вид главного меню показан на рис. 1.3. Наиболее
часто используемые команды меню отображены в виде кнопок со значками на стандартной панели
инструментов, размещенной ниже меню.
Многие команды окажутся знакомыми, поскольку главное меню Visual Basic 6 организовано и работает так
же, как и в других приложениях Microsoft, — например, в текстовом редакторе Microsoft Word или в
электронной таблице Microsoft Excel.
Рис. 1.3. Главное меню Visual Basic 6
Рассмотрим основные команды главного меню. В меню File (Файл) сгруппированы команды для работы с
файлами проекта. Используя эти команды, можно выполнять такие действия, как создание нового проекта,
открытие проекта для внесения изменений, добавление проекта для параллельной работы над несколькими
проектами или копирование форм из проекта в проект и т. п. Все команды этого меню перечислены в табл.
1.1.
Таблица 1.1. Команды меню File
Команда
Назначение
New Project (Новый проект)
Создает новый проект
Open Project (Открыть проект)
Открывает существующий проект
Add Project (Добавить проект)
Добавляет проект в группу для параллельной работы
над несколькими проектами, копирования форм из
проекта в проект или для его отладки
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 4 из 76
Remove Project (Исключить проект)
Удаляет проект из группы проектов
Save Project Group (Сохранить группу проектов)
Сохраняет группу проектов
Save Project Group As (Сохранить группу проектов
Сохраняет группу проектов под другим именем
как)
Save <имя формы> (Сохранить форму)
Сохраняет форму с прежним именем
Save <имя формы> As (Сохранить форму как)
Сохраняет форму под другим именем
Print (Печать)
Открывает диалоговое окно Print
Print Setup (Настройка печати)
Открывает диалоговое окно настройки печати
Make <имя проекта>.ехе (Создать ехе-файл
проекта)
Создает выполняемый файл текущего проекта
Make Project Group (Создать группу проектов)
Создает группу проектов
Exit (Выход)
Осуществляет выход из Visual Basic 6. В том случае,
если в окне программы находятся не сохраненные
результаты работы, появятся запросы о
необходимости сохранения проектов, форм и других
файлов
Меню Edit (Правка) содержит команды, предназначенные для редактирования (табл. 1.2). Часть из них
соответствует подобным командам редактирования других приложений Microsoft, например, отменить
предыдущую команду, повторить предыдущую команду, вырезать фрагмент текста, скопировать фрагмент
в буфер обмена. В составе этого меню целый набор команд для работы с таблицами базы данных:
добавлять и удалять поля, назначать первичный ключ в таблице базы данных.
Таблица 1.2. Команды меню Edit
Команда
Назначение
Undo (Отменить)
Отменяет предыдущую команду
Redo (Повторить)
Восстанавливает предыдущую команду
Cut (Вырезать)
Вырезает фрагмент текста
Сору (Копировать)
Копирует фрагмент в буфер обмена
Paste (Вставить)
Копирует содержимое из буфера обмена
Remove (Переместить)
Перемещает выделенное
Delete (Удалить)
Удаляет выделенное
Delete Table from Database (Удалить таблицу из
базы данных)
Удаляет таблицу из базы данных
Select All (Выделить все)
Выделяет все
Select All Columns (Выделить все колонки)
Выделяет все колонки
Table: Set Primary Key (Таблица: Установить
первичный ключ)
Определяет первичный ключ таблицы
Table: Insert Column (Таблица: Вставить поле)
Вставляет поле в таблицу
Table: Delete Column (Таблица: Удалить поле)
Удаляет поле из таблицы
Find (Найти)
Вызывает диалоговое окно поиска
Find Next (Найти следующее)
Ищет следующее значение, заданное для поиска
Replace (Заменить)
Ищет значение, заданное для поиска, и заменяет его
новым значением
Go To Row: First (Перейти на запись: Первая)
Устанавливает указатель на первую запись
Go To Row: Last (Перейти на запись: Последняя)
Устанавливает указатель на последнюю запись
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 5 из 76
Go To Row: Next (Перейти на запись: Следующая)
Устанавливает указатель на следующую запись
Go To Row: Previous (Перейти на запись:
Предыдущая)
Устанавливает указатель на предыдущую запись
Go To Row: Row (Перейти на запись: Запись)
Устанавливает указатель на запись с заданным
номером
Go To Row: New (Перейти на запись: Новая)
Вставляет новую запись
В составе меню View (Вид) содержатся команды вызова окон и панелей инструментальной среды Visual
Basic 6 (табл. 1.3).
Таблица 1.3. Команды меню View
Команда
Назначение
Code (Код)
Открывает окно редактора программного кода
Object (Объект)
Открывает окно конструктора форм
Object Browser (Браузер объектов)
Открывает окно браузера объектов
Immediate Window (Окно непосредственного
выполнения)
Открывает окно, предназначенное для ввода и
непосредственного выполнения команд
Locals Window (Окно Локальные)
Открывает окно, предназначенное для просмотра
значений переменных
Watch Window (Окно Наблюдение)
Открывает окно просмотра значений выражений
Project Explorer (Проводник проекта)
Открывает окно проводника проектов
Properties Window (Окно свойств)
Открывает окно свойств объектов Properties
Form Layout Window (Окно макета формы)
Открывает окно макета формы
Toolbox (Панель инструментов)
Отображает панель элементов управления
Data View Window (Окно просмотра данных)
Открывает окно просмотра данных
Color Palette (Цветовая палитра)
Отображает цветовую палитру
Toolbars (Панели инструментов)
Открывает меню, предназначенное для отображения
в окне программы Visual Basic следующих панелей:
Debug (Отладка), Editor (Редактор), Form Edit
(Редактор форм), Standard (Стандартная панель
инструментов)
В меню Project (Проект) сгруппированы команды управления проектом и его элементами (табл. 1.4). Они
позволяют добавить в проект и удалить из него элементы проекта, такие как форма, программный модуль,
класс и другие. С помощью команд данного меню вы также можете открыть окно свойств приложения,
добавить ссылки на подключаемые библиотеки, добавить дополнительные компоненты на панель
элементов.
Таблица 1.4. Команды меню Project
Команда
Назначение
Add Form (Добавить форму)
Добавляет в окно проекта форму
Add MDI Form (Добавить форму окна MDI)
Добавляет MDI-форму
Add Module (Добавить модуль)
Добавляет программный модуль
Add Class Module (Добавить класс)
Добавляет пользовательский класс
Add User Control (Добавить элемент управления)
Добавляет пользовательский элемент управления
Add Property Page (Добавить страницу свойств)
Добавляет стандартную форму настройки свойств
Add WebClass (Добавить Web-класс)
Добавляет Web-класс
Add Data Report (Добавить отчет)
Добавляет в проект отчет
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 6 из 76
Add DHTML Page (Добавить страницу DHTML)
Добавляет страницу DHTML
Add Data Environment (Добавить среду данных)
Добавляет среду базы данных
Add File (Добавить файл)
Добавляет файл
Remove (Исключить)
Исключает файл из проекта
References (Ссылки)
Вызывает окно включения ссылок проекта на
библиотеки
Components (Компоненты)
Открывает диалоговое окно Components,
позволяющее добавить на панель элементов
управления компоненты для их дальнейшего
включения в проект приложения
Project Properties (Свойства проекта)
Открывает окно свойств проекта Project Properties
Меню Format (Формат) содержит большое количество команд форматирования объектов в форме (табл.
1.5).
Таблица 1.5. Команды меню Format
Команда
Назначение
Align (Выровнять)
Открывает меню, содержащее команды
выравнивания объектов
Make Same Size (Установить подобный размер)
Открывает меню, содержащее команды,
управляющие размерами объектов в форме
Horizontal Spacing (Горизонтальный интервал)
Устанавливает интервал между объектами в
горизонтальном направлении
Vertical Spacing (Вертикальный интервал)
Устанавливает интервал между объектами в
вертикальном направлении
Center in Form (Центрирование в форме)
Центрирует объекты в форме
Order (Порядок)
Направляет выбранный объект в нижний или
верхний слой формы
В меню Debug (Отладка) сгруппированы команды (табл. 1.6), предназначенные для отладки приложения.
Используя команды этого меню, можно установить точки останова программы и проверить значения
выражении и переменных, выполняя программу по шагам.
Таблица 1.6. Команды меню Debug
Команда
Назначение
Step Into (Шаг с заходом в процедуры)
Осуществляет пошаговое выполнение процедуры,
включая также вызываемые ею процедуры
Step Over (Шаг без захода в процедуры)
Осуществляет пошаговое выполнение процедуры без
трассировки вызываемых ею процедур
Step Out (Шаг с выходом из процедуры)
Выполнение программы осуществляется до выхода
из текущей процедуры
Add Watch (Добавить окно Watch)
Открывает окно Add Watch (Добавить наблюдение)
для ввода выражений, за значениями которых будет
вестись наблюдение
Edit Watch (Открыть окно Edit Watch)
Открывает диалоговое окно Edit Watch для
редактирования или удаления выражений, за
значениями которых ведется наблюдение
Quick Watch (Открыть окно Quick Watch)
Открывает окно Quick Watch для просмотра значения
выбранного выражения
Toggle Breakpoint (Установить точку останова)
Устанавливает точку останова
Clear All Breakpoints (Отменить все точки
останова)
Удаляет все точки останова
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 7 из 76
Set Next Statement (Определить следующий
оператор)
Устанавливает следующий оператор
Show Next Statement (Показать следующий
оператор)
Показывает следующий оператор
Команды меню Run (Запуск) используются для управления запуском приложения (табл. 1.7). Используя
команды данного меню, можно запустить приложение на выполнение с компиляцией или без компиляции,
приостановить или прервать выполнение приложения.
Таблица 1.7. Команды меню Run
Команда
Назначение
Start (Запустить)
Запускает приложение на выполнение
Start with Full Compile (Запустить с полной
компиляцией)
Запускает приложение на выполнение с полной
компиляцией
Break (Приостановить)
Останавливает выполнение приложения
End (Конец)
Прекращает выполнение приложения
Restart (Перезапустить)
Перезапускает приложение
Меню Query (Запрос) содержит команды для создания и выполнения запросов к базе данных (табл. 1.8).
При помощи этого меню, например, можно выполнить запрос, преобразовать результаты запроса в
табличный вид.
Таблица 1.8. Команды меню Query
Команда
Назначение
Run (Запустить)
Выполняет запрос
Clear Results (Очистить результаты)
Очищает результаты запроса
Verify SQL Syntax (Проверить синтаксис SQL)
Проверяет синтаксис запроса
Group By (Группировать)
Группирует данные в запросе
Change Type: Select (Модификация: Выбрать)
Создает запрос для выборки данных
Change Type: Insert (Модификация: Вставить)
Создает запрос, предназначенный для добавления
данных в таблицу, используя значения других таблиц
Change Type: Insert Values (Модификация:
Вставить значения)
Создает запрос, предназначенный для добавления
данных в таблицу, используя заданные значения
Change Type: Update (Модификация: Изменить)
Создает запрос, предназначенный для изменения
данных
Change Type: Delete (Модификация: Удалить)
Создает" запрос, предназначенный для удаления
данных
Change Type: Make Table (Модификация: Создать
таблицу)
Создает новую таблицу на основе результатов
выборки
Add to Output (Добавить поля)
Добавляет поля в список полей формируемой
выборки
Sort Ascending (Сортировка по возрастанию)
Назначает сортировку по возрастанию
Sort Descending (Сортировка по убыванию)
Назначает сортировку по убыванию
Remove Filter (Удалить фильтр)
Удаляет фильтр
Select All Rows From <Table A > (Выбрать все
записи из первой таблицы)
Создает внешнее соединение, которое выбирает все
записи из первой таблицы, даже если они
отсутствуют во второй таблице
Select All Rows From <ТаЫе В > (Выбрать все
записи из второй таблицы)
Создает внешнее соединение, которое выбирает все
записи из второй таблицы, даже если они
отсутствуют в первой таблице
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 8 из 76
В меню Diagram (Диаграмма) сгруппированы команды для построения диаграммы, отображающей
структуру базы данных (табл. 1.9).
Таблица 1.9. Команды меню Diagram
Команда
Назначение
New Text Annotation (Новый текст пояснения)
Добавляет пояснительный текст
Set Text Font (Установить шрифт)
Устанавливает шрифт
Add Related Tables (Добавить связанную таблицу)
Добавляет связанную таблицу
Show Relationship Labels (Показать связи)
Показывает наименования связей
Modify Custom View (Изменить представление)
Изменяет вид отображения таблиц в диаграмме
View Page Break (Показывает постраничную
разбивку)
Показывает разбивку на страницы
Recalculate Page Break (Пересчитать постраничную
Пересчитывает разбивку на страницы
разбивку)
Arrange Selection (Выравнивать выбранные)
Выравнивает выбранные таблицы
Arrange Tables (Выравнивать все таблицы)
Выравнивает все таблицы
Autosize Selected Tables (Авторазмер выделенных
таблиц)
Автоматически устанавливает размер выбранных
таблиц
Команды меню Tools (Сервис) управляют настройками (табл. 1.10) инструментария среды Visual Basic 6.
Они позволяют добавить процедуру и определять ее атрибуты, вызвать окно редактора меню, изменить
настройки программы в диалоговом окне Options (Параметры), а также управлять хранилищем проектов
SourseSafe.
Таблица 1.10. Команды меню Tools
Команда
Назначение
Add Procedure (Добавить процедуру)
Добавляет процедуру
Procedure Attributes (Атрибуты процедуры)
Устанавливает атрибуты процедуры
Menu Editors (Редактор меню)
Вызывает окно редактора меню
Options (Параметры)
Открывает диалоговое окно Options для настройки
параметров программы Visual Basic
SourseSafe (Хранилище)
Управляет хранилищем проектов
В меню Add-Ins (Надстройки) содержатся команды (табл. 1.11) вызова дополнительных утилит, часто
называемых надстройками (add-ins).
Таблица 1.11. Команды меню Add-Ins
Команда
Назначение
Visual Data Manager (Менеджер баз данных)
Запускает менеджера управления базой данных
Add-In Manager (Менеджер надстроек)
Открывает диалоговое окно Add-In Manager,
позволяющее добавить надстройку в Visual Basic 6
Меню Window (Окно) содержит стандартные команды управления окнами (табл. 1.12).
Таблица 1.12. Команды меню Window
Команда
Назначение
Split (Разделить)
Разделяет окно
Tile Horizontally (Горизонтально)
Размещает окна горизонтально
Tile Vertically (Вертикально)
Размещает окна вертикально
Cascade (Каскадом)
Размещает окна каскадом
Arrange Icons (Упорядочение значков)
Изменяет размещение значков окон
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 9 из 76
При вызове окон приложения меню Window пополняется соответствующими командами активизации окон
приложения. При этом команды активизации окон называются по именам открытых окон.
В меню Help (Справка) сгруппированы команды вызова справочной системы Visual Basic б (табл. 1.13).
При помощи этого меню можно вызывать справочную систему с различными вариантами представления
информации. Отличие между ними состоит в открывающейся по умолчанию вкладке.
Таблица 1.13. Команды меню Help
Команда
Назначение
Context (Содержание)
Вызывает справочную систему с активной вкладкой
Содержание
Index (Указатель)
Вызывает справочную систему с активной вкладкой
Индекс
Search (Поиск)
Вызывает справочную систему с активной вкладкой
Поиск
Technical Support (Техническая поддержка)
Вызывает справочную систему с информацией о
службе технической поддержки Microsoft
Microsoft on the Web (Microsoft в Web)
Вызывает страницу Microsoft в Internet
About Visual Basic (0 Visual Basic)
Вызывает справочную информацию о пакете Visual
Basic 6
Замечание Команда Microsoft on the Web (Microsoft в Web) позволит вам получить нужную информацию
только в том случае, если у вас есть подключение к Internet.
Команды, которые часто используются при работе, можно разместить в виде кнопок на панели
инструментов. Можно также исключить из панели редко применяемые команды. Для добавления команды
на панель инструментов выполните следующие действия:
1. Установите указатель на стандартной панели инструментов и щелкните правой кнопкой мыши, а затем
выберите из появившегося контекстного меню команду Customize (Настройка). Откроется диалоговое окно
Customize.
Совет Для открытия диалогового окна Customize можно также в меню View (Вид) выбрать команду
Toolbars (Панели инструментов), а затем значение Customize.
2. Перейдите на вкладку Commands (Команды) (рис. 1.4).
Рис. 1.4. Диалоговое окно Customize
3. Из списка Categories (Категории) выберите наименование категории, из которой хотите выбрать
команду.
4. В списке Commands установите курсор на команду, помещаемую на панель инструментов.
5. Нажмите и, удерживая в нажатом состоянии правую кнопку мыши, перетащите выбранную команду на
панель инструментов.
6. Завершив перемещение, отпустите кнопку мыши.
7. Повторяя пункты с 3-го по 6-й, перенесите на панель инструментов требуемые вам команды.
8. Нажмите кнопку Close (Закрыть) для закрытия диалогового окна.
Используя диалоговое окно Customize, можно менять порядок расположения кнопок на панели
инструментов. Для этого выполните следующие действия:
1. Откройте диалоговое окно Customize (Настройка) любым удобным для вас способом.
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 10 из 76
2. На вкладке Toolbars (Панели инструментов) установите флажок рядом с наименованием той панели
инструментов, на которой хотите изменить порядок расположения кнопок. Если панель уже присутствует
на экране, то флажок для нее установлен, и этот пункт не выполняется.
3. На выбранной панели инструментов нажмите кнопку, расположение которой хотите изменить, и,
удерживая ее в нажатом состоянии, переместите в новое положение. При этом появляющийся маркер
(указатель) позиции "¦" помогает точно перенести кнопку на требуемое место.
4. Аналогичным образом измените порядок требуемых кнопок.
5. Сформировав нужный порядок кнопок, нажмите Close (Закрыть) для закрытия диалогового окна
Customize.
Вопросы для самоконтроля:

Auto Syntax Check

Require Variable Declaration

Auto List Members

Auto Quick Info

Auto Data Tips

Auto Indent
Рекомендуемая литература:
1.С.В.Симонович «Информатика. Базовый курс»
2."Освой самостоятельно Visual Basic 6.0 за 24 часа" Грэг Пери
3.Microsoft Visual Basic 4.0 Е.Адлеров
Дополнительная литература
Иллюстрированный самоучитель по Visual Basic 6.0
Лекция 2. Разработка приложения при помощи мастеров и шаблонов
Содержание лекционного занятия:
Мастер приложения Application Wizard
Мастер форм баз данных Data Form Wizard
Шаблоны
Мастера
Для увеличения эффективности разработки приложений инструментальная среда Visual Basic б предлагает
большой набор специальных средств, помогающих быстрее создать как само приложение, так и его
элементы: формы, диалоговые окна, отчеты, базы данных и многое другое, то есть практически все, что
связано с разрабатываемым приложением и средой, в которой оно будет работать. Такие средства принято
называть мастерами (Wizards).
Мастер в интерактивном режиме по шагам выполняет процесс создания и сборки элементов приложения, в
проект. При работе мастера необходимо только отвечать на вопросы посредством выбора предлагаемых на
каждом шаге вариантов и нажимать на кнопку Next (Следующий шаг) для перехода к следующему шагу. В
соответствии с выбором создаются все необходимые элементы приложения и предварительный исходный
код для них. Результатом работы мастера является макет приложения, готовый к обсуждению с заказчиком
и к дальнейшей доработке до коммерческого варианта. Работу мастера можно сравнить с работой
конвейера по сборке проекта приложения из предлагаемых на каждом его шаге элементов выходного
продукта, будь то приложение, база данных или просто отчет по ней.
Мастер работает по шагам до окончательной сборки конечного продукта. Однако, если для
разрабатываемого приложения не требуются все шаблоны форм или другие элементы приложения,
предлагаемые мастером, можно на любом шаге кнопкой Finish (Готово) завершить работу мастера или
пропустить указанный шаг и перейти к следующему нажатием кнопки Next. При этом будут созданы
только выбранные на пройденных шагах элементы приложения. Например, если вам от мастера
приложений требуется только MDI — окно и форма документа, то можно нажать кнопку Finish уже на
втором шаге мастера приложений.
Мастера Visual Basic 6 решают обширный круг задач, реализуемых в виде приложений или проектов.
Практически любое приложение из любой предметной области можно предварительно создать при помощи
мастеров и далее дорабатывать самостоятельно с использованием инструментария среды Visual Basic 6.
В среде проектирования Visual Basic 6 имеются мастера, представленные в табл. 2.1.
Таблица 2.1. Список мастеров для создания приложений
Мастер
Application Wizard
Назначение
Мастер приложений
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 11 из 76
Data Form Wizard
Мастер форм для баз данных
Data Object Wizard
Мастер объектов баз данных
Package and Deployment Wizard
Мастер упаковки и распространения
ActiveX Ctrl Interface Wizard
Мастер элементов управления ActiveX
ActiveX Doc Migration Wizard
Мастер миграции документов ActiveX
Property Page Wizard
Мастер страницы свойств
Toolbar Wizard
Мастер панели управления
Setup Wizard
Мастер установки приложений
Class Builder Utility
Конструктор классов
VB Wizard Manager
Конструктор мастеров
Наиболее часто используемые мастера вызываются из диалогового окна New Project. Другие мастера
вызываются из главного меню командами, входящими в состав меню Add-Ins (Надстройки). Если в меню
нет нужного вам мастера, его можно добавить при помощи диалогового окна Add-In Manager (Управление
надстройками), выполнив следующие действия:
1. В меню Add-Ins выберите команду Add-In Manager.
2. В списке Available Add-In (Доступные надстройки) открывшегося диалогового окна Add-In Manager
(рис. 2.1) установите курсор на наименование подключаемого мастера и выполните одно из следующих
действий:

дважды щелкните мышью;

установите флажок Loaded/Unloaded (Загрузить/Выгрузить), расположенный в области Load
Behavior (Поведение при загрузке).
3. Нажмите кнопку ОК для закрытия диалогового окна.
Наименование мастера в виде команды появляется в меню Add-Ins. Для запуска мастера достаточно
выбрать эту команду из меню.
Рис. 2.1. Диалоговое окно Add-In Manager
Замечание
Исключить команду вызова мастера из меню Add-Ins можно аналогичными действиями, только вместо
установки флажка необходимо выполнить его снятие.
Шаблоны
В Visual Basic 6 для создания приложений широко используются шаблоны, как самих приложений, так и
входящих в него форм. Шаблоны приложений расположены в виде значков в диалоговом окне New Project,
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 12 из 76
открываемом при запуске Visual Basic и при выполнении команды New Project (Новый проект) из меню
File. Шаблоны форм размещены в диалоговом окне Add Form, открывающемся при выборе команды Add
Form (Добавить форму) из меню Project (Проект) или при нажатии кнопки Add Form на стандартной
панели инструментов.
Для открытия шаблона необходимо дважды щелкнуть на его значке, после чего шаблон открывается,
позволяя начать проектирование.
Для многократного использования удачных и зарекомендовавших себя интерфейсных решений можно
создать собственные шаблоны и использовать их при проектировании новых приложений.
Для того чтобы разработать свой шаблон, например шаблон формы, необходимо создать требуемую форму
при помощи конструктора и сохранить ее. Затем скопировать эту форму в папку шаблонов
соответствующих элементов. Для форм, например, шаблоны могут храниться в папке \VB\Template\Forms.
После этого данный шаблон будет появляться в диалоговом окне выбора шаблонов под присвоенным ему
именем. Аналогичным образом можно создать шаблоны для форм MDI-окна, модулей, модулей классов,
элементов управления, страниц свойств.
Шаблон About Dialog
Обычно в приложение добавляют диалоговое окно с краткой информацией о назначении приложения и его
функциях. Для создания этого диалогового окна в Visual Basic можно использовать шаблон формы About
Dialog (рис. 2.28).
Рис. 2.28. Шаблон диалогового окна для описания приложения
Совет
Для вызова формы с краткой информацией о назначении приложения и его функциях удобно использовать
команду меню приложения About (О приложении).
Шаблон About Dialog содержит следующие объекты:

поле для отображения значка приложения. Для значка можно использовать графическое
изображение эмблемы фирмы;

текстовое поле Application Title (Заголовок приложения) для ввода заголовка приложения;

текстовое поле Version (Версия) для вывода номера версии приложения;

текстовое поле Арр Description (Описание приложения) для вывода описания приложения;

текстовое поле Warning (Внимание) для вывода информации об авторских правах, работе с
приложением и т. д.;

кнопка ОК для выхода из этого окна;

кнопка System Info (Системная информация) для вывода системной информации о параметрах
компьютера.
Вопросы для самоконтроля:
Шаблон Web Browser
Шаблон Dialog
Шаблон Log in Dialog
Рекомендуемая литература:
1.С.В.Симонович «Информатика. Базовый курс»
2."Освой самостоятельно Visual Basic 6.0 за 24 часа" Грэг Пери
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 13 из 76
3.Microsoft Visual Basic 4.0 Е.Адлеров
Дополнительная литература
Иллюстрированный самоучитель по Visual Basic 6.0
Лекция 3. Создание простого приложения
Содержание лекционного занятия:
Создание проекта
Сохранение проекта
Открытие проекта
Выполнение приложения
Создание формы
Создание проекта
Создание любого приложения в Visual Basic начинается с создания проекта. Проектом является
совокупность файлов, входящих в приложение и хранящих информацию о его компонентах. Чтобы создать
свой новый проект, запустите программу Visual Basic. Появится диалоговое окно New Project (Новый
проект), показанное на рис. 3.1. По умолчанию выбрана вкладка New (Новый) и выделен значок Standard
EXE. Нажмите кнопку Открыть.
Замечание
Диалоговое окно New Project (рис. 3.1) можно также использовать для открытия ранее созданных
проектов. Вкладка Existing (Существующий) имеет вид окна, позволяющего выбрать на диске требуемый
проект. На вкладке Recent (Последний) диалогового окна содержится список проектов, которые вы
открывали в последнее время.
Если при запуске программы Visual Basic не появляется диалоговое окно New Project, а это возможно из-за
того, что в нем был установлен флажок Don't show this dialog in the future (He показывать это диалоговое
окно в будущем), то для создания проекта выполните одно из следующих действий:

в меню File (Файл) выберите команду New Project (Новый проект);

нажмите комбинацию клавиш <Ctrl>+<N>.
Рис. 3.1. Диалоговое окно New Project, появляющееся при запуске программы Visual Basic
Откроется диалоговое окно New Project, представленное на рис. 3.2. Установите курсор на значок
Standard ЕХЕ и нажмите кнопку ОК или дважды щелкните на этом значке.
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 14 из 76
Рис. 3.2. Диалоговое окно New Project
Помимо вышеперечисленных средств, для создания нового приложения можно также выполнить
следующие действия:

нажать кнопку Add Standard EXE Project на стандартной панели инструментов;

нажать кнопку Add Form на стандартной панели инструментов. В открывшемся диалоговом окне
Add Form (рис. 3.3) установите курсор на значок Form и нажмите кнопку Открыть или дважды щелкните
на значке.
Рис. 3.3. Диалоговое окно Add Form
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 15 из 76
Рис. 3.4. Окно Project, предназначенное для разработки приложения
В результате открывается окно Project (рис. 3.4), содержащее новую форму, с которой можно начинать
работать: изменять установленные по умолчанию свойства, помещать в нее элементы управления,
используя для этого панель элементов управления, являющуюся основным рабочим инструментом при
разработке форм приложения. В строке заголовка окна программы Visual Basic появляется слово design,
указывающее, что программа находится в режиме разработки приложения.
. Сохранение проекта
Вероятно, будет излишним напоминание о том, что проект необходимо в процессе работы периодически
сохранять. Даже если вы не боитесь, что пропадет электричество, рано или поздно у вас возникнет
необходимость в сохранении данных, чтобы продолжить работу над проектом на следующий день.
При сохранении проекта необходимо помнить, что проект состоит из входящих в него компонентов, таких
как формы, модули кода, классы, элементы управления и т. д. Поэтому процесс сохранения проекта требует
последовательного сохранения его компонентов. Рассмотрим сохранение нашего нового проекта,
состоящего из одной пустой формы.
Для сохранения проекта выполните следующие действия:
1. В меню File (Файл) выберите команду Save Project (Сохранить проект) или нажмите кнопку Save Project
на стандартной панели инструментов.
2. В открывшемся диалоговом окне Save File As (рис 3.5) список Тип файла содержит значение Form
Files, указывая, что сохраняется входящая в приложение форма. Используя раскрывающийся список
Папка, выберите папку, в которой будет сохранена форма, затем в поле Имя файла введите имя формы и
нажмите кнопку Сохранить.
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 16 из 76
Рис. 3.5. Диалоговое окно Save File As для сохранения файлов приложения
3. Так как никаких компонентов, кроме формы, новое приложение не содержит, появляется диалоговое
окно Save Project As (Сохранить проект как) для сохранения самого проекта. По умолчанию в списке
Папка выбрана папка, в которой сохранили форму. Введите наименование проекта и нажмите кнопку
Сохранить.
При последующем сохранении проекта Visual Basic по умолчанию сохраняет файлы под их именами. Если
же в проект с момента последнего сохранения были добавлены новые компоненты, откроется диалоговое
окно Save File As для присвоения им имен.
Совет
Для облегчения работы с проектом и входящими в его состав файлами, прежде чем сохранять проект,
создайте отдельную папку, в которой затем и сохраните все файлы.
Открытие проекта
Открытие проекта может вызвать некоторые затруднения. Вроде бы делаете все правильно: в меню File
(Файл) выбираете команду Open Project (Открыть проект), затем в открывшемся диалоговом окне Open
Project находите на диске необходимый файл и нажимаете кнопку Открыть. Но где же проект? В окне
программы Visual Basic его нигде не видно.
Для того чтобы получить доступ к компонентам, входящим в проект, выполните одно из следующих
действий:

в меню View (Вид) выберите команду Project Explorer (Проводник проекта):

нажмите кнопку Project Explorer на стандартной панели инструментов;

нажмите комбинацию клавиш <Ctrl>+<R>.
Рис. 3.6. Окно проводника проекта содержит входящие в проект компоненты
Откроется окно проводника проекта (рис 3.6), содержащее список всех его компонентов. В верхней части
окна размещено имя проекта project test, заданное нами при его сохранении. Ниже располагаются входящие
в проект компоненты. Созданный нами проект содержит только форму, имеющую наименование Form_test
и расположенную в группе Forms. Для открытия формы дважды щелкните на ее имени.
Создание формы
При использовании команд, создающих новый проект, Visual Basic создает проект и открывает новую
форму (рис. 3.4), после чего вы можете приступать к созданию приложения.
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 17 из 76
Любая форма в Visual Basic состоит из объектов, называемых элементами управления, с помощью которых
осуществляется взаимодействие с пользователями приложения, а также с другими программами. Все
элементы управления имеют характерные для них свойства. Для любого объекта вы можете указать
действия, выполняемые программой при наступлении определенных событий. Процесс создания формы в
конструкторе форм состоит в размещении в форме объектов и определении свойств, а также связанных с
ними событий и выполняемых действий. Для размещения в форме объектов используется панель элементов
управления. Чтобы отобразить ее на экране, выполните одно из следующих действий:

выберите из меню View (Вид) команду Toolbox (Панель элементов управления);

нажмите кнопку Toolbox на стандартной панели инструментов.
На рис. 3.7 показана новая форма и панель элементов управления, используемая для размещения в форме
объектов. Описание кнопок этой панели приведено в табл. 1.15 главы 1. Более подробно назначение кнопок
рассматривается ниже.
Размещение элементов управления в форме осуществляется следующим образом:
Рис. 3.7. Окно конструктора форм
Рис. 3.8. Размещение в форме элемента управления
1. Нажмите кнопку Toolbox соответствующего элемента управления на панели элементов управления.
Например, для размещения в форме текстовой информации необходимо щелкнуть кнопку Label.
2. Установите курсор, принявший вид перекрестия, в место предполагаемого размещения объекта в форме.
3. Нажмите кнопку мыши и, не отпуская ее, нарисуйте рамку требуемого размера. При этом рядом с
курсором мыши появляются текущие размеры создаваемого объекта в твипах (рис. 3.8).
4. Отпустите кнопку мыши.
Замечание
Заданные при размещении размеры элемента управления вы можете позднее изменить, используя мышь
или окно свойств объекта.
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 18 из 76
Выполнение приложения
Для выполнения созданного в Visual Basic приложения существует много способов. Воспользуйтесь любым
из них:

выберите в меню Run команду Start (Выполнить);

нажмите кнопку Start на стандартной панели инструментов Visual Basic;

нажмите клавишу <F5>.
Вопросы для самоконтроля:
Свойства объектов формы
Общие для всех объектов свойства
События и методы
Рекомендуемая литература:
1.С.В.Симонович «Информатика. Базовый курс»
2."Освой самостоятельно Visual Basic 6.0 за 24 часа" Грэг Пери
3.Microsoft Visual Basic 4.0 Е.Адлеров
Дополнительная литература
Иллюстрированный самоучитель по Visual Basic 6.0
Лекция 4. Управление проектом
Содержание лекционного занятия:
Структура проекта
Проводник проекта
Использование браузера объектов для просмотра структуры проекта
Свойства проекта
Структура проекта
Проект обеспечивает взаимодействие всех элементов приложения и поэтому, как всякий организованный
определенным образом объект, имеет свою внутреннюю структуру. Ниже приведен пример структуры
проекта:
Project: MyProject
Module: MyMain
Form: Customer
Control LabelCustomerName
Control LabelOutstandingBalance
Control TextCustomerName
Control TextOutstandingBalance
Form: Invoice
Control LabelCustomerName
Control LabelInvoiceDate
Control LabelPastDueCharges
Control LabelCurrentCharges
Control LabelTotalCharges
Control TextCustomerName
Control TextInvoiceDate
Control TeApastDueCharges
Control TextCurrentCharges
Control TextTotalCharges
Control FrameInvoiceCopies
Control: CheckboxAccountSupervisor
Control: CheckboxRegionalCreditDept
Control: CheckboxCollectionsDept
Control: CommandPrintInvoice
Control: CommandSaveWithoutPrint
Control: CommandCancelInvoice
В данном случае проект состоит из программного модуля и двух форм с элементами управления. Элементы
управления, в соответствии со структурой проекта, тоже могут быть вложенными.
Из текста примера хорошо видно, что структура проекта представляет собой иерархическое дерево, корнем
которого является сам проект. Ветвями дерева являются такие элементы проекта, как формы, диалоговые
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 19 из 76
окна, программные модули и другие файлы. Листьями, входящими в ветви, являются элементы управления
и другие объекты форм и элементов проекта уровня форм.
Для работы со структурой проекта в среде проектирования Visual Basic 6 имеются специальные
инструментальные средства, в которых она наглядно представлена: проводник проекта и браузер объектов.
Структура проекта содержит ссылки на его элементы, а именно:

файлы форм, имеющие расширение frm. Для каждой формы создается отдельный файл. При этом
необходимо помнить, что для проекта в стиле MDI можно подключать только одну форму типа MDI-окна;

двоичные файлы свойств элементов управления для каждой формы, имеющие расширение frx.
Такие файлы создаются автоматически для форм, содержащих элементы управления, характеризующиеся
свойствами picture (Изображение) и icon (Значок);

файлы для каждого модуля классов, имеющие расширение els;

файлы для каждого программного модуля с расширением bas;

файлы элементов управления ActiveX, имеющие расширение осх;

файл ресурсов с расширением res;

библиотечные файлы;

файлы компонентов.
Проводник проекта
При работе с проектом удобнее всего работать в проводнике проекта. В этом окне наглядно видна
структура проекта со всеми элементами разрабатываемого приложения (рис. 4.1).
Рис. 4.1. Проводник проекта
В окне проводника проекта можно выполнять все действия, необходимые при проектировании приложении
с файлами элементов проекта:

добавлять файлы элементов проекта: формы, модули, классы модулей и т. д.;

исключать элементы из проекта;

редактировать;

сохранять элементы проекта.
Чтобы добавить в проект форму, модуль, файл и другие элементы, необходимо выполнить следующие
действия:
1.
Выбрать команду Add (Добавить) с указанием соответствующего типа файла из меню Project
(Проект). Например, для формы это команда Add Form (Добавить форму), для программного модуля —
Add Module (Добавить модуль).
2.
В появившемся диалоговом окне выбрать требуемый элемент. После этого элемент проекта
появляется в проводнике проекта.
Для исключения элемента из проекта достаточно просто выделить в проводнике требуемый элемент и
выполнить команду Remove (Исключить) меню Project (Проект) или выбрать одноименную команду из
контекстною меню, появляющегося при установке курсора на данном элементе и нажатии правой кнопки
мыши.
Для редактирования элемента проекта необходимо выделить его в окне проводника и выполнить команду
Object (Объект) меню View (Вид) или нажать правую кнопку мыши и выбрать из появившегося
контекстного меню команду View Object. Но самый простой способ — дважды щелкнуть на объекте. При
этом будет вызван соответствующий инструмент среды разработки с выбранным элементом для внесения
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 20 из 76
изменений. Для форм и диалоговых окон это конструктор форм, для программных модулей — редактор.
Для редактирования программного кода визуальных объектов можно использовать команду Code (Код) из
меню View (Вид) или команду View Code контекстного меню.
Использование браузера объектов для просмотра структуры проекта
В Visual Basic 6 проводник проекта не является единственным средством работы со структурой проекта.
Удобным дополнительным инструментом является Object Browser (Браузер объектов). Для просмотра
структуры проекта в окне браузера объектов из списка, расположенного в верхнем левом углу, выберите
имя открытого проекта (рис. 4.2).
Рис. 4.2. Браузер проекта
Браузер объектов предоставляет доступ к свойствам, методам и событиям объектов, входящих в проект. В
этом окне можно выполнять текстовый поиск заданного значения в пределах всего проекта.
Для запуска браузера можно воспользоваться одним из следующих способов:

выполнить команду Object Browser (Браузер объектов) меню View (Вид);

нажать кнопку Object Browser на стандартной панели инструментов;

нажать клавишу <F2>. Браузер содержит элементы управления, которые перечислены в табл. 4.1.
Таблица 4.1. Элементы управления object Browser
Элемент
Project/Library
(Проект/Библиотека)
Назначение
Список выбора библиотеки или проекта. Предоставляет возможность выбора
интересующей темы из списка библиотек или проекта
Список значений для текстового поиска. Позволяет совместно с кнопкой поиска
Search Text (Значение для
и кнопкой показа/подавления результатов поиска найти объекты, в которых
поиска)
встречается заданное значение
Кнопка Go Back (Назад). Перемещает указатель активной строки на
предыдущую выбранную позицию в списках Classes (Классы) и Members
(Состав)
Кнопка Go Forward (Вперед). Перемещает указатель активной строки на
следующую позицию из выбранных ранее в списках Classes и Members
Кнопка Copy to Clipboard (Копировать в буфер). Копирует выделенный объект
списка Members в буфер обмена Windows
Кнопка View Definition (Показать код). Открывает окно редактирования кода
выбранного в списках Classes и Members объекта
Кнопка Help (Справка). Открывает тему справочной системы Visual Basic 6 для
выбранного объекта
Кнопка Search (Поиск). Запускает поиск текста, введенного в списке поиска, и
открывает после выполнения поиска список итогов поиска Search Results (Итоги
поиска)
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 21 из 76
Кнопка Show/Hide Search Results (Показать/Скрыть результаты поиска).
Открывает и скрывает список Search Results результатов поиска
Список Classes
Показывает элементы проекта и библиотек
Список Members
Показывает объекты, процедуры, события, константы элементов проекта и
библиотек
Список Search Results
Выводит результаты проведенного текстового поиска в проекте или
библиотеках
Область описания
Отображает краткое описание выбранного объекта
В поле списка, предназначенного для текстового поиска, текст вводится вручную с клавиатуры. При этом
необходимо иметь в виду, что в этом списке хранятся тексты четырех последних поисков.
После выполнения поиска появляется дополнительный список итогов поиска Search Results (Итоги
поиска), в котором отображаются все объекты, соответствующие искомому тексту (рис. 4.3).
Рис. 4.3. Браузер проекта с результатом проведенного поиска
Кнопка Help (Справка) позволяет получить результат только для тех объектов и элементов этих объектов,
описание которых есть в справочной системе. Для разработанных при проектировании форм, конечно,
никакого обращения к справочной системе не будет. Но если выбрать свойство или метод этой формы, то
будет вызвана справочная система с соответствующей справкой по выбранному свойству, методу или
другой теме, которая есть в справочной системе.
Окно браузера и окно проводника при работе над проектом дополняют друг друга. В проводнике более
наглядна иерархия проекта и из него запускается визуальное проектирование объектов, а в браузере
подробно представлен состав элементов проекта, библиотек, классов. В окне Object Browser удобно
работать с объектами более низкого уровня, чем формы, диалоговые окна, файлы проекта. Из окна браузера
запускается редактор кода объектов, запуск визуального проектирования здесь недоступен.
Свойства проекта
Visual Basic 6 предоставляет возможность редактировать свойства проекта с помощью диалогового окна
свойств проекта Project Properties (рис. 4.4). Для открытия этого окна необходимо в меню Project (Проект)
выбрать команду <Имя проекта> Properties (Свойства проекта).
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 22 из 76
Рис. 4.4. Вкладка General окна свойств проекта
Диалоговое окно Project Properties состоит из пяти вкладок (рис. 4.4):

General (Основные) — основные свойства;

Make (Создать) — свойства создаваемого приложения;

Compile (Компиляция) — условия компиляции проекта;

Component (Компоненты) — параметры компонентов ActiveX проекта;

Debugging (Отладка) — параметры отладки проекта.
Вопросы для самоконтроля:
Вкладка General
Вкладка Make
Вкладка Compile
Вкладка Component
Вкладка Debugging
Рекомендуемая литература:
1.С.В.Симонович «Информатика. Базовый курс»
2."Освой самостоятельно Visual Basic 6.0 за 24 часа" Грэг Пери
3.Microsoft Visual Basic 4.0 Е.Адлеров
Дополнительная литература
Иллюстрированный самоучитель по Visual Basic 6.0
Лекция 5. Основные элементы программирования.
Содержание лекционного занятия:
Переменные
Константы
Массивы
Математические операторы
Имена переменных
Для того чтобы сделать ваши переменные более наглядными и простыми для чтения, рекомендуется давать
им имена, имеющие определенное смысловое значение. Существует несколько правил задания имен
переменных;

имя переменной может содержать не более 255 символов;

имя переменной может содержать любые буквы и цифры;

первый символ в имени переменной должен быть буквой;

в имени переменной должны отсутствовать пробелы;

имя должно быть уникальным в пределах области видимости.
Замечание
Список ограничений достаточно велик, чтобы знать его наизусть, но вам всегда поможет проверка
синтаксиса программы, при выполнении которой будет указано на использование недопустимых имен.
Например, допустимы следующие имена переменных:
CurrentNum, Total, Date_of_birth
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 23 из 76
Следующие имена недопустимы:
1Time, $Total, Date of birth
В последнее время в наименованиях переменных рекомендуется использовать префиксы, отражающие тип
переменной. При таком обозначении переменных повышается читабельность программы и снижается
количество ошибок программирования. Префиксы отражают тип переменной и область ее действия. С
конкретными значениями префиксов вы познакомитесь в разделах, посвященных типам данных и области
действия переменной.
Типы данных
В Visual Basic вы можете применять следующие типы данных:

числовой (integer, Long, Single, Double, Currency);

строковый (String);

типа дата (Date);

байтовый (Byte);

логический (Boolean);

произвольный (variant);

объектный (object).
Для хранения чисел в Visual Basic используется пять разных типов данных. Для хранения целочисленных
данных предназначены типы integer и Long. Первый из них служит для хранения целых чисел в диапазоне
от —32768 до 32767 и занимает в оперативной памяти два байта. Для хранения больших целочисленных
значений в диапазоне от —2 147483648 до 2 147483648 следует выбрать тип данных Long. В этом случае
для хранения переменной выделяется 4 байта. Аналогично, для хранения десятичных чисел с плавающей
точкой предназначены типы данных single и Double. Переменная с типом данных single занимает 4 байта и
может принимать значения в диапазоне -3,4^38 ... -1,4^-45 для отрицательных чисел и 1,4^-45 ... 3,4^38 для
положительных чисел. Если этого диапазона вам недостаточно, используйте десятичные числа с
плавающей точкой двойной точности, определяя для них тип данных Double. В этом случае переменной
выделяется 8 байтов, которых достаточно для хранения чисел в диапазоне -1,7^-308 ... -4,9^-324 для
отрицательных чисел и 4,9^-324 ... l,7^+308 для положительных чисел. Для хранения чисел с
фиксированной точкой служит тип currency. Переменная данного типа занимает в оперативной памяти 8
байт. Целая часть числа может содержать до 15 цифр, а дробная — до 4.
Используя переменные строкового типа, вы можете хранить строки как фиксированной (до 216 символов),
так и переменной длины (до 231 символов). Для переменной, имеющей тип строки с фиксированной
длиной, указывается максимальная длина строки. Если длина строки, присваиваемая этой переменной,
меньше заданной длины строки, то оставшиеся свободные места заполняются пробелами. При присвоении
переменной строки, количество символов которой превышает максимальное значение, все лишние символы
отбрасываются. Количество символов, хранящихся в строке с переменной длиной, определяется длиной
присваиваемых ей данных. При использовании ASCCII кодировки для каждого символа строки выделяется
один байт, а при использовании кодировки Unicode — два байта. Кроме этого выделяется 10 байт для
строки в целом.
Для хранения двоичных данных рекомендуется использовать массив переменных типа Byte. Каждый
элемент массива данного типа занимает один байт оперативной памяти.
Логический тип данных Boolean используется для хранения данных, принимающих одно из двух значений:
True (Правда) или False (Ложь). По умолчанию переменной данного типа присваивается значение False. В
оперативной памяти она занимает два байта.
Тип данных Date используется для хранения даты и времени. Переменная этого типа требует 8 байт в
оперативной памяти.
Тип данных Variant является универсальным. Переменная этого типа может хранить любой из выше
описанных типов данных. Все необходимые преобразования выполняются при присвоении переменной
значения. Выделяемый переменной объем оперативной памяти зависит от типа присвоенного значения, но
не может быть менее 16 байт.
Для хранения ссылок на объекты используется тип данных object. Каждая переменная данного типа требует
4 байта.
При разработке программ в среде Visual Basic в зависимости от типа данных переменных рекомендуется
использовать префиксы, приведенные в табл. 5.1.
Таблица 5.1. Префиксы, используемые в наименованиях'переменных
Тип данных
Префикс
Пример
Boolean
bin
bInSuccess
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 24 из 76
Byte
byt
bytImage
Currency
cur
curPrice
Date
dtm
dtmFinish
Double
dbl
dblSum
Integer
int
intQuantity
Long
Ing
IngTotal
Single
sng
sngLength
String
str
strLastname
Variant
vnt
vntValue
Встроенные константы Visual Basic
Visual Basic содержит огромное количество встроенных констант практически для всех возможных
случаев: цвета, клавиши, сообщения и т. п. Встроенные константы имеют префикс vb. Для поиска констант
определенной категории воспользуйтесь браузером объектов (рис. 5.3), который открывается при нажатии
кнопки Object Browser на стандартной панели инструментов.
Рис. 5.3. Поиск встроенных констант с помощью браузера объектов
Объявление массива фиксированного размера
Объявление массива фиксированного размера зависит от области его видимости и осуществляется
следующим образом:

глобальный массив объявляется с помощью оператора public в секции Declaration модуля:

массив уровня модуля — с помощью оператора private в секции Declaration модуля;

локальный массив — с помощью оператора private процедуры.
При объявлении массива после его имени в круглых скобках указывается верхняя граница массива. По
умолчанию нижней границей массива является 0. Например, в приведенном ниже коде, который вводится в
секцию Declaration модуля, задается массив из 21 элемента. Индекс элементов массива изменяется от 0 до
20:
Dim intCountPar (20) As Integer
Для создания глобального массива такого же размера необходимо использовать следующий код:
Public intCountPar (20) As Integer Можно явно задать нижнюю границу массива, используя ключевое слово
то:
Dim intCountPar (1 To 20) As Integer
В этом случае задается массив из 20 элементов. Индекс элементов массива изменяется от 1 до 20.
Visual Basic позволяет использовать многомерные массивы. Например, в следующем коде объявляется
двумерный массив размерностью 21х21:
Dim intCountPar (20, 20) As Integer
При использовании многомерных массивов, как и в случае одномерных, можно явно задавать нижнюю
границу:
Dim intCountPar (1 To 20, 1 То 20) As Integer Dim intCountPar (20, 1 То 20) As Integer
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 25 из 76
В верхней строке кода явно заданы верхняя и нижняя граница обеих размерностей. В нижней строке задана
верхняя и нижняя граница только для второй размерности.
Математические операторы
Математические операторы позволяют выполнять в программе действия над числами. В табл. 5.2
приведены арифметические операторы и выполняемые ими функции.
Таблица 5.2. Математические операторы
Оператор
Выполняемая операция
+
Сложение
-
Вычитание
*
Умножение
/
Деление
\
Целочисленное деление
mod
Остаток от деления нацело
/\
Возведение в степень
Математические операторы предназначены для создания выражений. Выражения могут содержать
переменные, константы, функции, связанные более чем одним оператором. Если в выражении отсутствуют
скобки, то операторы выполняются в следующем порядке:
1. Возведение в степень.
2. Умножение и деление.
3. Деление нацело.
4. Взятие остатка от деления.
5. Сложение и вычитание.
Вы можете изменить порядок вычисления в выражении, используя круглые скобки. Например, в формуле
(8-3*(4-2))/(3+2) вначале выполняется операция 4—2, затем умножение, затем вычитание из 8 предыдущего
результата, сложение 3+2 и, наконец, деление.
Замечание
Используя скобки, следите за тем, чтобы количество открывающих и закрывающих скобок было равно.
Первые три математических оператора, приведенных в табл. 5.2, не требуют пояснений. Рассмотрим
примеры использования операторов деления. Их в таблице три. Первый из них выполняет деление с
плавающей точкой. Его оператор записывается в виде косой черты (/). Введите в окне Immediate Visual
Basic следующее выражение:
Print 10/3
В результате в окно Immediate будет выведено число 3,33333333333333.
Далее в табл. 5.2 следует оператор целочисленного деления. Он записывается в виде обратной косой черты
(\). Введите в окне Immediate
Print 10\3
В результате будет получено число 3.
Третий оператор деления — оператор mod. Он выдает остаток, получающийся в результате деления.
Введите в окне Immediate Visual Basic следующее выражение:
Print 10 mod 3
В результате в окно Immediate будет выведено число 1. На рис. 5.4 показано окно Immediate с
результатами проведенных вычислений.
Последним в табл. 5.2 приведен оператор возведения в степень. Он имеет следующий синтаксис:
результат = число ^ показательСтепени
Если параметр показательСтепени больше 1, это означает, что число возводится в степень. Если он меньше
1, но больше 0, то из числа извлекается корень. При значении параметра меньше 0 вычисляется обратное
значение дроби. Например:
2 ^ 3 = 8 16 ^ 0.5 = 4 2 ^ -3 = 0,125
На рис. 5.5 показано окно Immediate с результатами возведения в степень.
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 26 из 76
Рис. 5.4. Окно Immediate с результатами вычислений
Рис. 5.5. Окно Immediate с результатами возведения в степень
Вопросы для самоконтроля:
Работа со строками
Оформление программных кодов
Программные модули
Рекомендуемая литература:
1.С.В.Симонович «Информатика. Базовый курс»
2."Освой самостоятельно Visual Basic 6.0 за 24 часа" Грэг Пери
3.Microsoft Visual Basic 4.0 Е.Адлеров
Дополнительная литература
Иллюстрированный самоучитель по Visual Basic 6.0
Лекция 6. Управляющие конструкции и циклы
Содержание лекционного занятия:
Условные выражения
Циклы
Оператор Exit
Управляющие конструкции Visual Basic
Как вы уже знаете, конструкции выполняются в той последовательности, в которой они записаны в
программе. Однако достаточно часто вам требуется изменить порядок выполнения команд в зависимости
от выполнения (или невыполнения) определенного условия. В Visual Basic, как и во всех языках
программирования, существуют управляющие конструкции, предназначенные для управления порядком
выполнения команд. Различают два основных типа управляющих операторов

if

Select Case
Конструкция if используется в том случае, когда необходимо, чтобы группа операторов выполнялась при
соблюдении определенных условий. Конструкция select case позволяет на основании анализа значения
заданного выражения выполнять те или иные действия.
В свою очередь, управляющие операторы if бывают двух видов:

If...Then

If...Then...Else
Конструкция If...Then применяется, когда необходимо выполнить определенные действия в зависимости от
некоторого условия. Управляющая конструкция If...Then...Else используется в том случае, когда
необходимо выполнить разные действия в зависимости от условия.
Рассмотрим перечисленные управляющие конструкции более подробно.
Условные выражения
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 27 из 76
Основанием для принятия решений в управляющих конструкциях являются условные выражения, поэтому
предварительно необходимо сказать несколько слов об этих выражениях и работе с ними.
Условные выражения — это такие выражения, которые возвращают одно из двух значений True (Истина)
или False (Ложь). В условных выражениях используются операторы сравнения, приведенные в табл. 6.1.
Таблица 6.1. Операторы сравнения для условных выражений
Оператор
Назначение
=
Равно
>
Больше
<
Меньше
<>
Не равно
>=
Больше или равно
<=
Меньше или равно
Над условными выражениями можно выполнять действия логической математики (логические операции), а
именно:

AND (И) — возвращает значение True (Истина), если все участвующие в операции выражения
имеют значение True. В остальных случаях возвращается значение False (Ложь);

OR (ИЛИ) — возвращает значение True, если хотя бы одно из участвующих в операции выражений
имеет значение True. В случае, когда все выражения имеют значение False, возвращается значение False;

XOR (Исключающее ИЛИ) — возвращает значение True (Истина), если только одно из
участвующих в операции выражений имеет значение True. В остальных случаях возвращается значение
False;

NOT (HE) — операция отрицания. Возвращает обратное для значения выражения значение, то есть
если выражение равно True, то возвращается False и наоборот, если значение выражения равно False, то
возвращается значение True.
Синтаксис использования логических операций такой же, как и у арифметических операций. Например:
(выражение1 And выражение2 And выражениеЗ) Or (выражение4 Хог выражение5)
Скобки в условных выражениях действуют так же, как и в арифметических, то есть первыми всегда
выполняются операции в скобках.
Сложные выражения можно предварительно вычислить и хранить в логических переменных типа Boolean.
Например, предыдущий код с использованием переменных можно представить следующим образом:
Dim bVar1 As Boolean
Dim bVar2 As Boolean
bVarl = выражение! And выражение2 And выражениеЗ
bVar2 = (выражение4 Xor выражение5)
Итоговым будет следующее выражение:
bVarl Or bVar2
Цикл с использованием конструкции For...Next
Конструкция For...Next выполняет последовательность команд определенное число раз. Такую
конструкцию называют циклом, а выполняемые ею программные коды — телом цикла.
Синтаксис конструкции For.. .Next следующий:
For счетчик = начЗначение То конЗначение [Step шаг]
конструкции
Next[счетчик]
Первый аргумент конструкции — счетчик — определяет имя переменной, которая будет "считать"
количество выполнении цикла. Параметр начЗначение указывает числовое значение, которое
присваивается переменной-счетчику перед первым проходом цикла. Цикл выполняется до тех пор, пока
значение счетчика не превысит конечного значения, указанного после ключевого слова то. После каждого
прохода цикла значение счетчика изменяется на величину шаг, указанную за ключевым словом step.
Ключевое слово Next обозначает конец тела цикла и является обязательным.
Перед каждым проходом цикла Visual Basic сравнивает значения счетчика и аргумента конЗначение. Если
значение счетчика не превышает установленного значения конЗначение, выполняются конструкции тела
цикла. В противном случае управление переходит к следующей за Next конструкции. Например:
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 28 из 76
For nCountVar = 1 То 10 Step 2
nNextWeek(nCountVar) = nCountVar * 2
Next
Здесь цикл выполняется пять раз при значениях счетчика nCountVar 1, 3, 5, 7 и 9. Обратите внимание, что
переменная-счетчик используется в теле цикла в качестве обычной переменной.
Шаг изменения счетчика может быть отрицательным. Например:
For nCounter = 100 То 1 Step -10
nDecades(nCounter) = nCounter *2
Next
В этом случае цикл будет выполняться до тех пор, пока nCountVar больше 1. Если значение шага цикла
отрицательно, то начальное значение счетчика должно быть больше конечного.
Ключевое слово step можно опустить. В этом случае значение шага по умолчанию принимается равным 1.
Возможны ситуации, при которых выполнение цикла невозможно или, наоборот, его выполнение
становится бесконечным. Например:
* Невыполняемый цикл: начальное значение счетчика
* больше конечного при положительном шаге цикла
For nCounter=100 To 1
nDecades (nCounter) = nCounter
Next
* Бесконечный цикл: значение счетчика
* изменяется в теле цикла и никогда не превысит 10 For nCounter = 1 То 10
nCounter = 1
Next
Цикл с использованием конструкции For Each... Next
Цикл с использованием конструкции For Each...Next похож на цикл For.. .Next, но используется для
обработки всех элементов некоторого набора объектов или массива. Его особенно удобно использовать в
том случае, когда количество обрабатываемых элементов не известно.
Синтаксис конструкции For Each.. .Next следующий:
For Each элемент In группа
конструкции
Next элемент
Пример использования конструкции приведен ниже.
Dim objControl As Control
For Each objControl In Controls
objControl.Caption = "Test " & objControl.Caption
Next objControl
Замечание
При использовании конструкции For Each.. .Next необходимо иметь в виду, что для набора объектов
параметр элемент может быть только переменной типа Variant, общей переменной типа Object или
объектом, перечисленным в Object Browser. Для массивов параметр элемент может быть только
переменной типа Variant.
Оператор Exit
В некоторых случаях необходимо прервать выполнение цикла до его завершения. Это можно сделать с
помощью команды безусловного перехода Exit.
Команда Exit завершает выполнение цикла и передает управление следующей за циклом конструкции.
Синтаксис этого оператора внутри цикла For выглядит так: Exit For. Внутри цикла Do синтаксис оператора
Exit Do.
For счетчик = начЗначение То конЗначение [Step шаг]
[конструкции]
[Exit For]
[конструкции]
Next[счетчик[, счетчик] [,...]]
Do [{While ¦ Until} условие]
конструкции
[Exit Do]
конструкции
Loop
Например:
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 29 из 76
For nCounter=100 To 1 Step -10
nDecades(nCounter) = nCounter *2
If nDecades(nCounter) > 20 Then Exit For
Next
Оператор Exit служит также для выхода из процедур sub и Function. Синтаксис операторов в этом случае
соответственно Exit Sub и Exit Function. Эти операторы могут находиться в любом месте тела процедуры.
Они используются в том случае, когда процедура выполнила нужные действия и из нее необходимо выйти.
Вопросы для самоконтроля:
Конструкция If... Then
Конструкция If... Then... Else
Цикл с использованием конструкции Do...Loop
Рекомендуемая литература:
1.С.В.Симонович «Информатика. Базовый курс»
2."Освой самостоятельно Visual Basic 6.0 за 24 часа" Грэг Пери
3.Microsoft Visual Basic 4.0 Е.Адлеров
Дополнительная литература
Иллюстрированный самоучитель по Visual Basic 6.0
Лекция 7. Разработка пользовательского интерфейса
Содержание лекционного занятия:
Общие советы по разработке интерфейса
Типы интерфейсов
Элементы интерфейса
Строка состояния
Общие советы по разработке интерфейса
При разработке интерфейса необходимо руководствоваться следующими принципами:

Стандартизация. Рекомендуется использовать стандартные, проверенные многими
программистами и пользователями интерфейсные решения. Для Visual Basic это, разумеется, решения
Microsoft. Причем в качестве стандарта (образца для "подражания") может служить любое из приложений
— Word, Excel или другие приложения Microsoft. Под решениями подразумеваются дизайн форм,
распределение элементов управления в формах, их взаимное расположение, значки на кнопках управления,
названия команд меню.

Удобство и простота работы. Интерфейс должен быть интуитивно понятным. Желательно, чтобы
все действия легко запоминались и не требовали утомительных процедур: выполнения дополнительных
команд, лишних нажатий на кнопки, вызова промежуточных диалоговых окон.

Внешний дизайн. Нельзя, чтобы интерфейс утомлял зрение. Он должен быть рассчитан на
длительную работу пользователя с приложением в течение дня.

Неперегруженность форм. Формы должны быть оптимально загружены элементами управления.
При необходимости можно использовать вкладки или дополнительные страницы форм.

Группировка. Элементы управления в форме необходимо группировать по смыслу, используя
элементы группировки: рамки, фреймы.

Разреженность объектов форм. Элементы управления следует располагать на некотором
расстоянии, а не лепить друг на друга; для выделения элементов управления можно организовать пустые
пространства в форме.
Здесь перечислены основные принципы, которые следует учитывать при проектировании интерфейса
приложения, но они не являются догмой. Со временем в процессе работы с пользователями и накоплением
практического опыта будут вырабатываться и свои оптимальные принципы построения интерфейса.
Типы интерфейсов
В настоящее время для приложений, разрабатываемых в среде Windows при помощи Visual Basic б,
используется три типа интерфейса: однодокументный SDl (Single-Document Interface), многодокументный
MDI (Multiple-Document Interface) и интерфейс типа проводник (Explorer).
Замечание
Под документом в этом случае нужно понимать форму, предназначенную для работы с данными, а не с
конкретным документом.
В этой главе основное внимание будет уделено первым двум типам интерфейса, поскольку они наиболее
часто применяются для разработки пользовательских приложений. Интерфейс типа проводника
используется в приложениях не так часто, поэтому мы дадим только его краткое описание.
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 30 из 76
Однодокументный интерфейс — это тип интерфейса, в котором предоставляется возможность работы
только с одним документом в одном окне. Примером может служить редактор Microsoft WordPad. Для
работы с несколькими документами в таком интерфейсе необходимо многократно запускать приложение.
Для каждого типа данных и документов требуется своя форма и, соответственно, свое приложение с
интерфейсом типа SDI. В принципе, это тоже один из возможных вариантов, но он подходит только для
работы с небольшим количеством форм документов. При загрузке большого количества SDI-приложений
начинает переполняться оперативная память компьютера и приложения работают очень медленно. Каждый
раз при запуске SDI-приложения в память загружаются одни и те же данные (меню, панель и элементы
управления), выполняющие одинаковые действия, что приводит к неэффективной и медленной работе
запускаемых приложений.
Однако полностью отказываться от интерфейса типа SDI не стоит, поскольку он вполне годится для работы
с одним или двумя документами (например, для копирования из одного документа в другой). Есть и
положительные стороны приложений такого типа интерфейса — они занимают меньше места на диске и в
оперативной памяти, да и на их разработку уходит гораздо меньше времени, что также немаловажно.
Интерфейс типа MDI дает возможность работать в одном приложении с любым количеством открытых
окон.
Меню
Любое приложение создается для реализации комплекса функций, обеспечивающих выполнение общей
задачи приложения. Для быстрого доступа ко всем функциям приложения используется меню: главное
меню приложения и контекстное меню отдельных объектов приложения (форм, панелей).
При проектировании меню следует руководствоваться определенными принципами. Главный из них —
стандарты. Рекомендуется придерживаться стандартных названий команд меню и их расположения:
например, пункт меню для работы с файлами рекомендуется называть в своих приложениях File (Файл), а
пункт меню для вызова справочной системы приложения — Help (Справка). При этом пункт меню File
желательно располагать самым первым, а пункт Help — последним. На этот стандарт для всех приложений
Windows, к которому привыкли многие миллионы пользователей, можно вполне положиться. Приложение
будет при этом более понятным пользователю.
В процессе разработки меню желательно группировать команды меню, реализующие функции для решения
конкретной задачи (например, работа с файлами), в одно раскрывающееся меню, которое будет
соответствовать пункту меню. Например, все команды, реализующие функции работы с файлами,
желательно сгруппировать в одно раскрывающееся меню, связанное с пунктом меню File.
В приложениях каждой команде меню, как правило, соответствует
"горячая" клавиша (клавиша быстрого доступа). Рекомендуется по
возможности использовать стандартные клавиши, например, как в
Microsoft Word. В принципе, это приложение может служить
стандартным образцом для создания собственных приложений при
разработке не только меню, но и всех других элементов.
Как и любой другой объект приложения, меню имеет набор свойств.
Свойства меню доступны для редактирования в окне Properties
(Свойства) формы, которой принадлежит меню (рис. 7.7).
Рис. 7.7. Свойства меню
Основные свойства меню приведены в табл. 7.6.
Таблица 7.6. Основные свойства меню
Свойство
Name
Назначение
Наименование (имя) меню. Должно быть уникальным, так как позволяет
идентифицировать меню. Желательно пользоваться стандартным присвоением имени,
то есть имя должно начинаться с букв mnu
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 31 из 76
Caption
Текст, отображаемый в пункте меню. Если в этом тексте перед одной из букв поместить
символ "&", то буква в пункте меню будет подчеркнута и клавиша этой буквы будет
назначена "горячей" клавишей для быстрого доступа к данному пункту меню
Checked
Если это свойство имеет значение True, при работе приложения слева от наименования
выбранного пункта меню появляется галочка
Enabled
Свойство, определяющее возможность выполнения команды (пункта) меню. В
зависимости от контекста объекта команды запрещаются или разрешаются
HelpContextID
Идентификатор справочной системы, соответствующий справке об этом меню
Index
Идентификатор пункта меню в массиве элементов управления приложения
NegotiatePosition
Определяет положение меню на экране
Shortcut
Комбинация клавиш для быстрого выполнения пункта меню
Visible
Определяет видимость на экране пункта меню. При работе приложения с помощью
этого свойства пункты меню можно динамически прятать или показывать
WindowList
Назначает свойство формирования динамического списка окон. При установке этого
свойства в меню будет добавляться список окон по мере их запуска при работе
приложения. Это свойство обычно используется для пункта меню самого верхнего
уровня и для родительского окна приложений с интерфейсом типа MDI
Строка состояния
Строка состояния — это специальный элемент окна, состоящий из нескольких панелей для отображения
текущей информации о состоянии и режиме работы приложения. На рис. 7.29 показана строка состояния,
отображающая состояние приложения, дату и текущее системное время. Этот элемент интерфейса обычно
размещается в нижней части родительского окна приложения, если не требуется специально установить его
в другом месте окна. Такое положение строки состояния является стандартным.
Рис. 7.29. Строка состояния приложения
Для добавления строки состояния в форму используется элемент управления statusBar. Чтобы этот объект
можно было использовать в приложении, необходимо в окне Components (Компоненты) подключить к
выбранному проекту библиотеку Microsoft Window Common Control 6.0. После подключения библиотеки
элемент управления StatusBar появляется на панели элементов управления среды проектирования и его
можно добавить в форму стандартным способом, как и все другие элементы управления.
Строка состояния состоит из набора панелей, каждая из которых является объектом и имеет следующие
основные свойства:

Alignment — задает выравнивание текста на панели строки состояния;

Bevel — устанавливает затенение для придания объемности панелям;

Minwidth — определяет минимальный размер панелей строки состояния;

picture — задает графическое изображение, которое будет помещено на панель;

Style — определяет тип панели. Может принимать значения, указанные в табл. 7.17;

Text — задает текст, размещаемый на панели. Как правило, этот текст формируется программно;

ToolTip — задает текст подсказки для панели. Выводится при задержке указателя мыши на панели.
Таблица 7.17. Значения свойства Style панелей строки состояния
Стиль Значение
Описание
sbrText
0
Дает возможность отображать текст или изображение в свойствах панели Text и Picture,
соответственно
sbrCaps
1
Отображает состояние клавиши <Caps Lock>. Если эта клавиша нажата, текст CAPS на
панели яркий, если отжата — затененный
sbrNum
2
Отображает состояние клавиши <Num Lock>
sbrIns
3
Отображает состояние клавиши <lns>
sbrScrl
4
Отображает состояние клавиши <Scroll Lock>
sbrTime
5
Выводит текущее время
sbrDate
6
Выводит текущую дату
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 32 из 76
Настройка строки состояния и управление ею выполняется при помощи окна свойств Property Pages
(Страница свойств) этого элемента управления, открываемого при выборе команды Properties (Свойства)
контекстного меню объекта (рис. 7.30).
Рис. 7.30. Диалоговое окно Property Pages для строки состояния
Рассмотрим создание строки состояния на примере нашего приложения MyMDIApp. Откроите
приложение и выполните следующие действия:
1. Добавьте в форму элемент управления StatusBar, дважды щелкнув мышью
гвг кнопку StatusBar на панели элементов управления.
2. После появления в форме строки состояния присвойте ей имя sbStatusBar.
3. Установите курсор на строку состояния, нажмите правую кнопку мыши и выберите из появившегося
контекстного меню команду Properties (Свойства). Откроется диалоговое окно Property Pages для
настройки строки состояния.
4. С помощью кнопки Insert Panel (Вставить панель), добавьте в строку состояния еще две панели.
Замечание
По умолчанию строка состояния содержит одну панель.
5. Используя счетчик Index (Индекс), перейдите к настройке панели 1. Панели строки состояния
проектируются независимо друг от друга, переключение с одной на другую выполняется при помощи
счетчика Index.
6. Первую панель будем использовать для отображения текстовой информации. Установите для нее
свойство Style в значение 0 -sbrText, затем в свойство Text этой панели введите значение Текст подсказки.
7. Перейдите к настройке второй панели, установив для счетчика Index значение 2.
8. Вторая панель будет использоваться для отображения текущей даты. Установите для свойства style
значение 0 -sbrDate.
Рис. 7.31. Работа приложения, содержащего строку состояния
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 33 из 76
9. Перейдите к настройке третьей панели, установив для счетчика Index значение 3.
10. Установите для свойства Style значение 0 -sbrCaps. Это будет панель, отображающая состояние
клавиши <Caps Lock>.
11. Запустите полученное приложение на выполнение командой Start меню Run. Созданное приложение
представлено на рис. 7.31.
Вопросы для самоконтроля:
Панели инструментов
Диалоговые окна
Использование элемента управления CommonDialog для создания диалоговых окон
Рекомендуемая литература:
1.С.В.Симонович «Информатика. Базовый курс»
2."Освой самостоятельно Visual Basic 6.0 за 24 часа" Грэг Пери
3.Microsoft Visual Basic 4.0 Е.Адлеров
Дополнительная литература
Иллюстрированный самоучитель по Visual Basic 6.0
Лекция 8. Использование стандартных элементов управления Visual Basic.
Содержание лекционного занятия:
Метка
Текстовое поле
Кнопки управления
Список ListBox
Списки типа ComboBox
Метка
Как уже было сказано в главе 3, для размещения в форме текстовой информации, которая не может быть
изменена пользователем приложения, используется элемент управления Label (Метка). Рассмотрим более
подробно его свойства. Откройте окно свойств Properties данного объекта. Для этого выделите его и
выберите в контекстном меню команду Properties (Свойства).
Текст метки задается свойством caption. Он может быть установлен в окне Properties или программно.
Шрифт текстовой информации определяется свойством Font (Шрифт). Для выбора шрифта в окне свойств
установите курсор в данное свойство и нажмите кнопку с тремя точками в правом столбце свойства.
Открывается диалоговое окно Выбор шрифта (рис. 8.1), содержащее три списка, позволяющих указать
наименование, начертание и размер шрифта.
Используя свойства ForeColor и Backcolor, можно задать цвет текстовой информации и цвет фона элемента
управления. Свойство BorderStyle (Стиль рамки) определяет тип обрамления вокруг объекта Label,
позволяя оформить надпись в виде текстового поля. Для этого вместо используемого по умолчанию
значения None необходимо выбрать для свойства значение Fixed Single.
Свойство Appearance позволяет придать тексту некоторую объемность.
Свойство Alignment (Выравнивание) определяет выравнивание текста в элементе управления по правому,
левому краю или по ширине. Если информация в объекте размещена на нескольких строках, то
выравнивание осуществляется на каждой строке.
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 34 из 76
Рис. 8.1. Диалоговое окно Выбор шрифта
Оформление надписей в элементе управления Label меняется в зависимости ОТ значения СВОЙСТВ
Alignment, Appearance И BorderStyle (рис. 8.2).
Рис. 8.2. Оформление надписей
Текст, задаваемый объектом Label, может иметь достаточно большой размер и занимать несколько строк.
Максимальное количество его символов — 65528. Задать размеры надписи можно с помощью следующих
средств:

мыши;

клавиши-стрелки при нажатой клавише <Shift>;

свойства Height (Высота) и width (Ширина);

свойства AutoSize и Wordwrap.
Первые три способа задания размера текстового объекта удобны в тех случаях, когда он имеет небольшой
конкретно заданный размер. Но хотя пользователь приложения не может изменять текст, отображаемый с
помощью объекта Label, его можно изменять программно. В этом случае точный размер текстового объекта
заранее не известен, и для задания его размера удобно использовать свойства Autosize и wordwrap.
Рассмотрим их более подробно.
Свойства, определяющие оформление текста
Для задания стиля рамки текстового поля применяется свойство Borderstyle (Стиль рамки). Оно содержит
два значения. По умолчанию используется значение Fixed Single, при котором поле выделено рамкой. При
установке значения None рамка вокруг поля отсутствует. Свойство Appearance позволяет придать
объемность текстовому полю, имеющему рамку.
Свойства Backcolor и ForeColor позволяют соответственно задать цвет фона и цвет текста, размещаемого в
элементе управления TextBox.
С помощью свойства Alignment (Выравнивание) можно задать вариант выравнивания информации в поле:
по центру, по левому или правому краю.
Для задания наименования, размера и начертания шрифта, отображаемого в текстовом поле, используется
свойство Font (Шрифт).
Многострочные текстовые поля
По умолчанию предполагается, что текстовое поле служит для ввода одной строки текста. Свойства MultiLine и ScrollBar элемента управления TextBox позволяют настроить объект таким образом, что он будет
использоваться для ввода нескольких строк или даже большого блока текстовой информации (табл. 8.2).
Таблица 8.2. Предназначение свойств MultiLine и ScrollBar
Свойство
Назначение
MultiLine
Определяет способ отображения поля. При установленном значении True текст
автоматически переносится по словам на несколько строк. При вводе информации в поле
для перехода на новую строку необходимо использовать клавишу <Enter>
ScrollBar
Данное свойство используется, если свойство MultiLine имеет значение True и размер поля
не позволяет отобразить заданный в свойстве Text текст. Свойство может принимать одно из
следующих значений:
0-None — полоса прокрутки отсутствует 1-Horizontal — горизонтальная полоса прокрутки 2Vertical — вертикальная полоса прокрутки 3-Both — горизонтальная и вертикальная полосы
прокрутки
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 35 из 76
Вид текстового поля меняется в зависимости от значения свойств MultiLine и ScrollBar (рис. 8.3).
Рис. 8.3. Вид текстового поля в зависимости от значения свойств MultiLine и ScrollBar
Клавиши быстрого доступа
Для кнопки управления можно задать клавиши быстрого доступа, что весьма удобно пользователям,
использующим при работе с формой только клавиатуру. В этом случае для нажатия кнопки, размещенной в
форме, достаточно будет нажать комбинацию клавиш <Alt>+< подчеркнутая клавиша в названии кнопки>
Печать. Чтобы задать клавишу быстрого доступа, необходимо при вводе названия кнопки в поле свойства
Caption перед соответствующей буквой наименования кнопки расположить амперсанд (&). В названии
кнопки эта буква будет выделена подчеркиванием.
Замечание
Если вы не хотите, чтобы символ амперсанда интерпретировался как назначение клавиши быстрого
доступа, вам необходимо поместить два символа амперсанда.
Свойства Default и Cancel
Одну из кнопок, размещаемых в форме, можно сделать кнопкой по умолчанию, т. е. помещать в нее фокус
при запуске формы на выполнение. Для этого используется свойство Default. В этом случае для нажатия
данной кнопки достаточно нажать клавишу <Enter>. Чтобы сделать кнопку используемой по умолчанию,
необходимо для свойства Default установить значение True.
Используя свойство cancel кнопки, можно сделать ее кнопкой отмены. Если для свойства Cancel
установлено значение True, кнопка будет выбираться при нажатии клавиши <Esc>.
Замечание
При присвоении свойствам Default или Cancel кнопки значения True, аналогичные свойства других
размещенных в форме кнопок получат значения False.
Добавление элементов в список
Элементы в список могут добавляться во время разработки и программно с использованием метода
Additem. При формировании списка во время разработки в свойстве List вручную задается весь
необходимый список. Данные не обязательно вводить в алфавитном порядке, т. к. их можно упорядочить,
установив для свойства Sorted (Сортировка) значение True. В этом случае вновь вводимые элементы
списка также будут располагаться в алфавитном порядке.
Предупреждение
Нежелательно использовать сортировку, если данные в список будут добавляться методом Additem с
использованием параметра index.
Для добавления элементов в список программным способом предназначен метод AddItem, имеющий
следующий синтаксис:
NameList.AddItem выражение [, index]
где:

NameList — наименование списка, задаваемое свойством Name;

выражение — элемент списка. Если это символьная величина, то она должна быть помещена в
кавычки;

index — порядковый номер элемента в списке. Если этот параметр отсутствует, элемент
добавляется в конец списка.
Замечание
При использовании параметра index необходимо учитывать, что нумерация элементов начинается с 0.
Например, для программного формирования списка городов вам необходимо задать следующую
процедуру:
Private Sub Form Load()
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 36 из 76
List1.AddItem "Москва"
List1.AddItem "С.Петербург"
List1.AddItem "Псков"
List1.AddItem "Новгород"
List1.AddItem "Чебоксары" End Sub
На рис. 8.10 показано окно редактора кода, содержащего процедуру формирования списка городов.
Рис. 8.10. Окно редактора кода с процедурой, формирующей список
Города в списке располагаются в том порядке, в котором они заданы в процедуре. Например, если строку
кода List1.Additem "Чебоксары" заменить строкой
List1.Additem "Чебоксары", 0
Вопросы для самоконтроля:
Линии и контуры
Полосы прокрутки
Элемент управления Frame
Таймер
Рекомендуемая литература:
1.С.В.Симонович «Информатика. Базовый курс»
2."Освой самостоятельно Visual Basic 6.0 за 24 часа" Грэг Пери
3.Microsoft Visual Basic 4.0 Е.Адлеров
Дополнительная литература
Иллюстрированный самоучитель по Visual Basic 6.0
Лекция 9. Работа с файлами и организация печати.
Содержание лекционного занятия:
Традиционный подход при работе с файлами
Система файловых объектов (FSO)
Традиционный подход при работе с файлами
Традиционный подход при работе с файлами остается неизменным практически с самых первых версий
Visual Basic и заключается в использовании функций и операторов, обеспечивающих прямой доступ к
информации в файлах. Функции и операторы, используемые при работе с файлами, приведены в табл. 9.1.
В столбце Тип файла этой таблицы приняты следующие сокращения типов файлов:

П — файл последовательного доступа;

Пр — файл произвольного доступа;

Б — бинарный файл.
В данной главе мы рассмотрим только основные функции и операторы, необходимые для получения
навыков работы с файлами.
Таблица 9.1. Функции и операторы для работы с файлами
Функция,оператор
Описание
Тип файла
Open
Открывает файл
П, Пр, Б
Close
Закрывает все файлы
П, Пр, Б
Close #
Закрывает файл по идентификатору (дескриптору)
П, Пр, Б
Reset
Закрывает все открытые файлы, записывает содержимое буферов
П, Пр, Б
Print tt
Записывает данные в файл
П
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 37 из 76
FileCopy
Копирует файл
П, Пр, Б
EOF
Определяет метку конца файла
П, Пр, Б
FileAttr
Возвращает режим доступа открытого файла
П, Пр, Б
FileDateTime
Возвращает дату и время создания файла
П, Пр, Б
FileLen
Возвращает размер файла в байтах
П, Пр, Б
FreeFile
Возвращает номер свободного идентификатора файла (дескриптора)
П, Пр, Б
GetAttr
Получает атрибуты файла
П, Пр, Б
SetAttr
Устанавливает атрибуты файла
П, Пр, Б
Loc
Возвращает номер текущей позиции в файле
Пр, Б
LOF
Возвращает размер открытого файла в байтах
П, Пр, Б
Seek
Устанавливает на заданную номером позицию или запись в файле
П, Пр, Б
Dir
Возвращает содержимое текущей папки
П, Пр, Б
Kill
Удаляет файл
П, Пр, Б
Lock
Блокирует файл при работе в многопользовательской среде
П, Пр, Б
Unlock
Снимает блокировку файла в многопользовательской среде
П, Пр, Б
Name
Задает (переименовывает) имя файла
П, Пр, Б
Get #
Читает данные из файла
Пр.Б
Input
Читает данные из файла
П, Б
Input #
Читает данные из файла
П
Line Input #
Читает строку из файла
П
Put #
Записывает данные в файл
Пр, Б
Write #
Записывает данные в файл
П
Для удобства сгруппируем функции и операторы по выполняемому действию, как это принято в Visual
Basic. Такое объединение удобно при выборе функции или оператора для выполнения необходимых
действий с файлами (табл. 9.2).
Таблица 9.2. Функции и операторы для работы с файлами по группам
Выполняемое действие
Функции, операторы
Открыть или создать файл
Open
Закрыть файл
Close, Reset
Определение параметров вывода данных Format, Spc, Tab, Width #
Скопировать файл
FileCopy
Получить информацию о файле
EOF, FileAttr, FlleDateTime, FileLen, FreeFile, GetAttr, Loc, LOF
Организовать управление файлами
Dir, Kill, Lock, Unlock, Name
Прочитать данные из файла
Get #, Input, Input ft, Line Input #
Получить информацию о размере файла
FileLen
Установить атрибуты файла
SetAttr
Найти позиции в файле
Seek
Записать данные в файл
Print tt, Put #, Write ft
Работа с файлами последовательного доступа
Файлы последовательного доступа — это, как правило, текстовые файлы, то есть последовательности
ASCII-символов, организованные в строки. Примером может служить файл инициализации Windows NT
(рис. 9.1).
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 38 из 76
При открытии файлов последовательного доступа возможны три режима доступа:

Input — открыт для последовательного чтения данных;

Output — открыт для последовательной записи данных, при этом информация записывается всегда
с начала файла (предыдущая затирается, если в файле уже что-то записано);

Append — открыт для добавления данных к уже имеющимся в файле.
Рис. 9.1. Пример файла последовательного доступа
Работа с файлами произвольного доступа
Файл с произвольным доступом обладает заранее заданной структурой и состоит из записей. Каждая запись
в файле — это некоторая порция данных, которая имеет строго определенный размер и свой конкретный
номер в файле. Доступ к данным в файле произвольного доступа осуществляется именно по номеру записи.
Данные из файла такого типа читаются и записываются записями. Примерами файла произвольного
доступа являются базы данных, всегда имеющие строго определенную структуру.
При открытии файлов произвольного доступа возможен только один режим доступа — Random. Кстати,
этот режим является режимом по умолчанию для функции Open.
Используя возможности Visual Basic, можно создать файл произвольного доступа пользовательской, то
есть своей собственной структуры. Продемонстрируем это на небольшом примере. С помощью оператора
туре объявим тип переменной, имеющей заданную .структуру записи:
Type PhisFace
PhisFaseID As Integer
FIO As String * 50
End Type
В данном примере объявлена структура в виде записи из двух полей. Первым полем является
идентификатор, а вторым — фамилия, имя и отчество.
Замечание
Объявление пользовательского типа данных необходимо осуществлять в программном модуле. Для
добавления программного модуля в проект следует выполнить команду Add Module (Добавить модуль) из
меню Project (Проект) и на вкладке New (Новый) появившегося диалогового окна Add Module выбрать
значок с названием Module (Модуль).
Класс Drive
В классе Drive собраны свойства для работы с устройствами файловой системы (рис. 9.6).
Объекты данного класса содержат свойства, описанные в табл. 9.7.
Таблица 9.7. Список свойств класса Drive
Свойство
Назначение
AvailableSpace Возвращает значение свободного пространства устройства, доступное пользователю
DriveLetter
Возвращает буквенное обозначение устройства
DriveType
Возвращает тип устройства в виде следующих текстовых значений: "Unknown",
"Removable", "Fixed", "Network", "CD-ROM", "RAM Disk"
FileSystem
Возвращает тип файловой системы устройства (FAT, NTFS или CDFS)
FreeSpace
Возвращает общее свободное пространство. Это свойство является аналогом AvailableSpace
IsReady
Указывает готовность устройства к работе: True — готово к работе, False — не готово к
работе
Path
Возвращает путь устройства, папки, файла
RootFolder
Возвращает корневую папку указанного устройства
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 39 из 76
Serial-Number Возвращает числовой идентификатор тома диска
ShareName
Возвращает сетевое имя указанного устройства
TotalSize
Возвращает общий размер устройства в байтах
VolumeName
Возвращает или устанавливает имя тома устройства
Рис. 9.6. Класс Drive в системе FSO
Класс File
В классе File предоставлены свойства и методы для работы с файлами (рис. 9.7).
Рис. 9.7. Класс File в системе FSO
Класс характеризуется свойствами, описанными в табл. 9.8.
Таблица 9.8. Список свойств класса File
Свойство
Описание
Attributes
Возвращает или устанавливает атрибуты файлов и папок. Значения атрибутов такие же,
как в аналогичной функции GetAttr традиционной системы функций для работы с
файлами (описаны в табл. 9.3). Дополнительно здесь используются еще два атрибута:
Alias (числовое значение 64) и Compressed (числовое значение 128)
DateCreated
Возвращает дату и время создания файла
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 40 из 76
DateLastAccessed Возвращает дату и время последнего обращения к указанному файлу
DateLastModified Возвращает дату и время последнего изменения файла
Drive
Возвращает буквенное обозначение устройства, на котором находится файл
Name
Возвращает или устанавливает имя файла
ParentFolder
Возвращает имя родительской папки для файла
Path
Возвращает путь файла
ShortName
Возвращает короткое имя файла по соглашению "8.3" (восемь символов для имени и три
для расширения)
ShortPath
Возвращает путь и короткое имя файла по соглашению "8.3"
Size
Возвращает размер файла в байтах
Type
Возвращает краткую информацию о типе файла. Например, для файла с расширением txt
это будет "Text Document"
В отличие от класса Drive, класс File содержит методы, список которых приведен в табл. 9.9.
Таблица 9.9. Список методов класса File
Метод
Описание
Copy
Копирует файл
Delete
Удаляет указанный файл
Move
Перемещает файл
OpenAsTextStream
Открывает файл и возвращает имя объекта TextStream для чтения, записи или
добавления текстовых данных
Вопросы для самоконтроля:
Работа с атрибутами файлов
Класс TextStream
Работа на уровне файлов
Работа на уровне данных
Рекомендуемая литература:
1.С.В.Симонович «Информатика. Базовый курс»
2."Освой самостоятельно Visual Basic 6.0 за 24 часа" Грэг Пери
3.Microsoft Visual Basic 4.0 Е.Адлеров
Дополнительная литература
Иллюстрированный самоучитель по Visual Basic 6.0
Лекция 10. Отладка программ, обработка ошибок и оптимизация приложений.
Содержание лекционного занятия:
Редактор кода
Отладка программ
Обработка ошибок
Оптимизация приложений
Редактор кода
Редактор кода программы Visual Basic 6 — это достаточно мощный текстовый редактор с большим
количеством возможностей и являющийся основным инструментом программиста для создания и отладки
приложения.
В окне редактора (рис. 10.1) представлены следующие элементы управления:

раскрывающийся список Object (Объект) — обеспечивает выбор объектов приложения. Этот
список находится в левом верхнем углу окна редактора. При выборе объекта в этом списке синхронно
изменяется содержимое списка Procedure;
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 41 из 76

раскрывающийся список Procedure (Процедура) — дает возможность выбора членов объекта
(событий) и автоматического вывода процедуры или шаблона для выбранного члена в окне редактора. Этот
список находится справа от списка Object;

кнопка Procedure View (Просмотр процедур) — включает режим просмотра процедур для каждого
объекта по отдельности. Располагается в левом, нижнем углу окна редактора;

кнопка Full Module View (Полный просмотр модулей) — включает режим работы полного
просмотра процедур, при котором в окне редактора показаны все процедуры, разделенные горизонтальной
линией (если установлен соответствующий флаг настройки). Располагается в левом нижнем углу окна
редактора;

горизонтальная и вертикальная полосы прокрутки — позволяют просмотреть текст, который не
помещается в текущем окне редактора.
Рис. 10.1. Редактор кода в режиме полного просмогра процедур
Как можно понять из списка элементов управления, редактор кода работает в двух режимах: в режиме
просмотра всего текста приложения (полный просмотр процедур) (рис. 10.1) и в режиме просмотра
процедур по отдельности (просмотр отдельных процедур) (рис. 10.2).
Рис. 10.2. Редактор кода в режиме просмотра процедур
Редактор кода вызывается автоматически при двойном щелчке мыши на форме проекта или командой Code
(Код) меню View (Вид). Для каждого элемента проекта (формы или программного модуля) открывается
отдельное окно редактора кода. Соответственно это окно появляется в списке окон меню Window (Окно).
В большом проекте удобнее всего работать из Проводника проекта. В этом случае редактор кода
вызывается кнопкой View Code (Просмотр кода) панели инструментов окна Проводника.
Для работы в окне редактора можно использовать контекстное меню (рис. 10.3). Оно содержит команды,
приведенные в табл. 10.1.
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 42 из 76
Рис. 10.3. Контекстное меню редактора кода
Таблица 10.1. Команды контекстного меню редактора кода
Команда
Назначение
Cut (Вырезать)
Вырезает выделенный текст и вставляет его в буфер обмена
Copy (Копировать)
Копирует выделенный текст в буфер обмена
Paste (Вставить)
Вставляет текст из буфера обмена
List Properties/Methods
Показывает список свойств и методов для указанного объекта
(Список свойств/методов)
List Constants
Показывает список констант
(Список констант)
Quick Info (Быстрая
информация)
Выводит синтаксис вводимого оператора
Parameter Info
(Информация о
параметрах)
Выводит список параметров отдельной функции или оператора
Complete Word (Полное
слово)
Вызывает список свойств и методов. При этом позиционирование курсора в
списке осуществляется по начальным буквам введенного текста кода.
Например, если вами введена буква "V", то курсор в списке будет установлен на
свойстве Value. Выбранное свойство или метод можно вставить из этого списка
в текст кода двойным щелчком мыши
Toggle (Установка)
Вызывает меню для установки точек останова, прерываний работы приложения
по ошибкам, установки закладок в исходном тексте
Object Browser (Просмотр
Открывает окно Object Browser (Просмотр объектов)
объектов)
Add Watch (Добавить
наблюдение)
Открывает диалоговое окно Add Watch (Добавить наблюдение)
Definition (Описание)
Приводит описание указанного объекта (вызывая окно Object Browser)
переменной или константы
Last Position (Последняя
позиция)
Позиционирует курсор на команде в редакторе кода, которая была
отредактирована (просмотрена) последней
Hide (Подавить)
Закрывает текущее окно
В свою очередь, Toggle (Установка) открывает меню, содержащее команды, описанные в табл. 10.2.
Таблица 10.2. Команды меню Toggle
УМКД 042-14.2.07.1.20.8/03-2012
Команда
Ред. № 1 от 03.09.2012г.
Страница 43 из 76
Назначение
Breakpoint (Точка останова)
Устанавливает точку останова в текущей строке
Break on All Errors
(Прерывать на всех
ошибках)
Устанавливает автоматический переход в режим прерывания программы с
возможностью продолжения работы с места прерывания при возникновении
любой ошибки
Break in Class Module
(Прервать в модуле класса)
Назначает прерывание работы программы при возникновении ошибок в
модулях классов
Break on Unhandled Errors
(Прервать по
неуправляемым ошибкам)
Назначает прерывание работы программы по неуправляемым ошибкам
Bookmark (Закладка)
Устанавливает специальные метки (закладки) в левом вертикальном поле
редактора
Замечание
Настройка редактора была описана в главе 1 при рассмотрении общих настроек среды проектирования.
Напомним, что настройка параметров редактора осуществляется на вкладках Editor (Редактор) и Editor
Format (Форматы редактора) диалогового окна Options, открываемого командой Options (Параметры)
меню Tools (Сервис).
Отладка программ
Как правило, отладка — это проверка работы и исправление ошибок программистом перед передачей
проекта на тестирование.
Инструментарии отладки позволяет проконтролировать избранные участки кода приложения для
локализации ошибки, выполняя приложение по шагам, останавливаясь в точках останова, дает
возможность проверить значения переменных, свойств объектов и другую интересующую информацию и
выяснить, таким образом, источник ошибки.
В набор инструментария отладки Visual Basic 6 входят такие основные инструменты, как:

панель инструментов Debug (Отладка) с кнопками команд для выполнения отладки приложения;

окно Immediate (Непосредственное выполнение), предназначенное для непосредственного ввода
команд, требующих немедленного выполнения;

окно Watches (Наблюдение), предназначенное для просмотра значений выражений, включенных в
список просмотра;

окно Locals (Локальные), предназначенное для просмотра значений переменных;

редактор кода со встроенными возможностями просмотра переменных, констант, свойств,
выражений при отладке приложения в точках останова и пошаговом выполнении приложения;

окно Call Stack (Стек вызовов) для просмотра вызванных, но незавершенных процедур.
Панель инструментов Debug (рис. 10.4) активизируется при выборе из меню View (Вид) команды Toolbars
(Панели инструментов), а затем значения Debug (Отладка).
Рис. 10.4. Панель инструментов Debug, используемая для отладки приложения
На панели инструментов Debug находятся кнопки, обеспечивающие работу по отладке приложения.
Назначение этих кнопок описано в табл. 10.3.
Таблица 10.3. Кнопки панели инструментов Debug
Кнопка
Название
Назначение
Start/Continue
(Продолжить)
Запускает программу или продолжает ее выполнение после прерывания
Break (Остановка)
Вызывает прерывание программы в необходимом месте (без
использования точек останова)
End(Завершение)
Завершает выполнение программы
Toggle Breakpoint
Устанавливает точку останова на текущей строке кода
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 44 из 76
(Установить точку
останова)
Step Into (Шаг с
заходом в процедуры)
Осуществляет пошаговое выполнение процедуры, включая также
вызываемые ею процедуры
Step Over (Шаг без
захода в процедуры)
Осуществляет пошаговое выполнение процедуры без трассировки
вызываемых ею процедур
Step Out (Шаг с
Выполняет пошаговое выполнение текущей процедуры до выхода из нее
выходом из процедуры)
Locals Window (Окно
Locals)
Открывает диалоговое окно Locals для контроля значений переменных
Immediate Window
(Окно Immediate)
Открывает окно Immediate для ввода и выполнения команд
Watch Window (Окно
Watch)
Открывает диалоговое окно Watches для просмотра выражений,
включенных в список наблюдения
Quick Watch
(Быстрый просмотр)
Открывает окно Quick Watch для просмотра выражения и значения,
которое оно возвращает в данный момент в точке останова программы
или на определенном шаге при пошаговом запуске программы
Call Stack
(Стек вызовов)
Открывает окно Call Stack, в котором представлен список выполняемых
процедур
С остальными инструментами вы сможете познакомиться при рассмотрении процесса отладки. Откройте
любое из ранее разработанных приложений, например приложение для изучения записи/чтения данных из
файла. Установите точку останова в процедуре записи данных. Для этого щелкните кнопкой мыши,
установив указатель в сером вертикальном поле редактора кода напротив интересующей строки, или
выполните команду Toggle Break-point (Установить точку останова) меню Debug (Отладка). При этом в
сером вертикальном поле рядом с выбранной командой устанавливается жирная точка (рис. 10.5),
остановка выполнения программы произойдет именно в этом месте кода.
Рис. 10.5. Точка останова в окне редактора кода
При запуске программы в точке останова выполнение программы приостанавливается и для контроля
работы приложения можно использовать весь отладочный инструментарий: просматривать значения
переменных и выражений при позиционировании маркера на выбранной переменной или выражении (рис.
10.6).
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 45 из 76
Рис. 10.6. Просмотр значения выражения в точке останова
Для более тщательного контроля работы приложения можно использовать окна просмотра: Immediate
(Немедленное выполнение), Watches (Наблюдение), Locals (Локальные), Quick Watch (Быстрый
просмотр). Call Stack (Стек вызовов).
Кроме прямого ввода и выполнения команд, окно Immediate служит для выяснения значения переменных
и выражении. Для этого необходимо выполнить команду ? с указанием интересующего выражения, как это
показано на рис. 10.7. Значение выражения выводится в следующей строке этого же окна.
Рис. 10.7. Окно Immediate для ввода команд и получения результатов
При работе с окном Immediate удобно использовать объект Debug и его метод print. В режиме запуска
метод Debug. Print выводит текстовое сообщение в окне Immediate. Синтаксис этого метода очень простой:
Debug.Print StringMessage где StringMessage — текст выводимого в окно Immediate сообщения.
В окне Locals можно просмотреть все переменные и их значения, используемые в данный момент
приложением (рис. 10.8)
Основным окном для просмотра значений выражений является окно Watches (рис. 10.9). В этом окне
можно проконтролировать любое выражение из списка введенных для проверки.
Рис. 10.8. Окно Locals для контроля за переменными
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 46 из 76
Рис. 10.9. Окно Watches для контроля за значениями выражений
Список проверяемых выражений пополняется в диалоговом окне Add Watch (рис. 10.10), открываемом
командой Add Watch (Добавить наблюдение) контекстного меню редактора кода или одноименной
кнопкой на панели инструментов Debug (Отладка). Для добавления выражения в список контролируемых
необходимо ввести его в текстовое поле Expression (Выражение) этого окна.
Замечание
Если в тексте кода выделить выражение, то при вызове окна Add Watch это выражение по умолчанию
вставляется в поле Expression.
Рис. 10.10. Окно Add Watch для добавления контролируемого выражения
Область Context диалогового окна Add Watch позволяет установить область видимости переменных,
наблюдаемых в выражении. Раскрывающийся список Procedure (Процедура) задает видимость внутри
процедур, а список Module (Модуль) — внутри программных модулей.
Переключатель Watch Type (Тип просмотра) определяет, как Visual Basic реагирует на наблюдаемое
выражение. При установке опции Watch Expression (Выражение наблюдения) значение выражения
отображается в диалоговом окне Watches в режиме прерывания. Опция Break When Value Is True
(Приостановить при равенстве выражения значению Истина) автоматически задает режим прерываний и
обращение к контролю выражений при условии равенства выражения значению True или ненулевому
значению для числовых выражений. Опция Break When Value Changes (Приостановить при из менении
значения выражения) аналогична опции Break When Value Is True, но приложение входит в режим
прерывания при изменении значения выражения.
В дополнение к окну Watches, для просмотра выражений можно использовать окно Quick Watch (Быстрый
просмотр) для быстрого доступа к значению выражения (рис. 10.11). Для этого окна не требуется вводить
список контролируемых выражений, а достаточно выделить интересующее выражение в тексте кода и
вызвать окно Quick Watch одноименной кнопкой на панели инструментов Debug,
Для контроля выполняемых процедур используется окно Call Stack (Стек вызовов), в котором показаны все
вызванные и активные в данный момент процедуры (рис. 10.12).
Рис. 10.11. Окно Quick Watch для быстрого просмотра
Рис. 10.12. Окно Call Stack для просмотра вызванных процедур
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 47 из 76
Рис. 10.13. Место вызова процедуры, выбранной на рис. 10.12
Из окна Call Stack можно перейти к коду программы (рис. 10.13), откуда был выполнен вызов выбранной в
списке процедуры, с помощью кнопки Show (Показать). На рис. 10.13 показано место вызова процедуры,
выбранной в окне Call Stack (рис. 10.12).
Обработка ошибок
Обработка ошибок и неправильных действий пользователя — обязательная составляющая любого проекта.
Для работы с ошибками в Visual Basic 6 есть специальный оператор on Error.
Существует несколько вариантов синтаксиса этого оператора. Первый вариант имеет вид:
On Error Go To StringLabel
где StringLabel — метка оператора. Она должна быть уникальной в пределах процедуры.
Метка оператора — это любое текстовое значение, начинающееся с буквы и завершающееся двоеточием. В
этом варианте синтаксиса при возникновении ошибки программа будет переходить к оператору,
следующему непосредственно за меткой StringLabel. Например, приведенный ниже код выполняет
обработку ошибки:
On Error Go To ErrorLabel
текст кода процедуры ErrorLabel:
Call ErrorProcedure ()
End
В данном случае при возникновении ошибки будет выполняться оператор call ErrorProcedure о,
вызывающий процедуру обработки ошибки.
Для игнорирования ошибки необходимо использовать следующий вариант оператора on Error:
On Error Resume Next
Для того чтобы отключить обработку ошибок в какой-либо процедуре, оператор on Error записывается в
виде:
On Error Go To 0
При обработке ошибок хорошо бы выдать сообщение о том, что это за ошибка. Для этого предназначены
перечисленные ниже встроенные возможности Visual Basic 6:

служебная переменная Err, которая содержит код ошибки;

служебная переменная Error, которая содержит текст системного сообщения об ошибке;

объект Err, который содержит одновременно код и сообщение об ошибке.
Для выполнения действии программы после обнаружения ошибки служит оператор Resume, который имеет
различные варианты использования. Например:

Resume Next
При этом выполняется оператор, следующий за оператором с ошибкой.

On Resume NextLabel
где NextLabel — метка оператора, который будет выполняться после обработки ошибки.
Приведенный ниже код обрабатывает ошибки:
On Error Go To ErrorLabel
текст кода процедуры
ErrorLabel:
Call ErrorProcedure ()
Resume NextStatement
текст кода процедуры
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 48 из 76
NextStatement:
текст кода
При использовании этого варианта обработки ошибки выполнение программы не остановится, как в случае
с предыдущим кодом, а будут выполняться операторы кода, расположенного после метки продолжения
работы.
Оптимизация приложений
Целью любой разработки является создание максимально эффективного приложения. Однако часто
некоторые параметры приложений могут быть противоречивыми (например, размер приложения и
скорость его работы), и требуется подобрать оптимальное решение для их реализации в проекте. Поиск
реализации эффективно работающего приложения в условиях противоречий и ограничений и есть
оптимизация.
Как правило, целью оптимизации является создание приложения, выполняющего все поставленные перед
ним функциональные задачи максимально быстро и при этом с использованием минимального количества
ресурсов системы, в частности места на диске и памяти компьютера при загрузке приложения. Перед
проведением оптимизации необходимо ясно представлять, какие параметры являются более важными:
скорость или ресурсы. Оптимизация приложения, таким образом, это целая стратегия создания
эффективного приложения.
Рассмотрим оптимизацию приложения, включающую в себя следующие основные разделы:

оптимизацию скорости выполнения приложением вычислений и других действии, измеряемых
временем;

оптимизацию размера приложения;

оптимизацию размера графики приложения.
Конечно, это далеко не полный список, но главные направления оптимизации он отражает.
Перед тем как строить стратегию оптимизации, рекомендуется ответить на следующие три вопроса:

Что оптимизировать?

Где оптимизировать?

Когда завершить оптимизацию?
Отвечая на первый вопрос, необходимо выделить цели оптимизации. Например, приложение для расчета
заработной платы должно работать максимально быстро, при этом можно пожертвовать его размером.
Наоборот, создавая приложение для Internet, необходимо помнить, что проект большого размера не будет
работать в сети Internet, т. к. исполняемый файл приложения размером 1 Мбайт и более практически
неработоспособен в сети.
Второй вопрос определяет место оптимизации для достижения максимального эффекта за определенное
время. Оптимизировать приложение можно до бесконечности. Однако, как правило, на эту процедуру
отводится определенное время, которое можно использовать на решение других вопросов или на
разработку других приложений. Поэтому надо стремиться добиваться максимальной оптимизации
минимальными усилиями. Например, если оптимизируется скорость приложения, первым делом нужно
обратить внимание на циклы и на работу приложения внутри циклов, т. е. уменьшить количество шагов
цикла до необходимого. И наоборот, на процедуры, вызываемые редко, следует видимо обратить внимание
в последнюю очередь или вообще не оптимизировать их.
Третий вопрос подразумевает, что оптимизацию не следует проводить до бесконечности, если существуют
ограничения, не связанные с работой кода приложения. Некоторые параметры приложения могут прямо
зависеть от параметров системы: скорости работы диска или сети. Поэтому следует вовремя остановиться в
оптимизации параметров приложения, когда ее результат уже в малой степени зависит от приложения.
Например, при работе с диском таким ограничением будет скорость выполнения операций записи/чтения
данных с диска.
Вопросы для самоконтроля:
Оптимизация скорости работы приложения
Оптимизация размера приложения
Оптимизация размера графики приложения
Рекомендуемая литература:
1.С.В.Симонович «Информатика. Базовый курс»
2."Освой самостоятельно Visual Basic 6.0 за 24 часа" Грэг Пери
3.Microsoft Visual Basic 4.0 Е.Адлеров
Дополнительная литература
Иллюстрированный самоучитель по Visual Basic 6.0
Лекция 11. Использование графики.
Содержание лекционного занятия:
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 49 из 76
Простые элементы управления для работы с графикой
Свойство Picture
Объекты для работы с изображениями
Графические методы
Простые элементы управления для работы с графикой
На панели элементов управления имеются кнопки, позволяющие создавать в форме простые элементы
графики:
Кнопка
Название
Назначение
Line (Линия)
Создает в форме линию
Shape (Контур)
Создает в форме контуры
Frame (Рамка)
Размещает в форме рамку, позволяющую объединить объекты в группу
Элемент управления Line
Элемент управления Line — это линия, имеющая по умолчанию толщину 1. Для изменения вида линии
используется свойство BorderStyle объекта Line. Оно может принимать следующие значения:

0-Transparent — невидимая линия;

1-Solid — сплошная линия;

2-Dash — штриховая линия;

3-Dot — пунктирная линия;

4-Dash-Dot — штрихпунктирная линия;

5-Dash-Dot-Dot — штрихпунктир с двойным штрихом;

6-Inside Solid — непрерывная линия.
На рис. 11.1 показаны типы линии в зависимости от значения свойства BorderStyle.
Толщину линии можно задать с помощью свойства Borderwidth. Цвет линии задается свойством
BorderColor.
Замечание
Более подробно элемент управления Line был рассмотрен нами в главе 8.
Рис. 11.1. Элемент управления Line
Свойство Picture
Чтобы разместить в форме графическое изображение, не обязательно выбирать графические объекты.
Можно просто воспользоваться свойством picture формы. Для вставки графического изображения в форму
необходимо нажать
кнопку с тремя точками в свойстве picture, а затем в открывшемся диалоговом окне Load Picture
(Загрузить изображение) (рис. 11.4) выбрать файл требуемого изображения.
Данное свойство формы используют для размещения фонового изображения. При этом необходимо учесть,
что размер формы должен соответствовать размеру исходного изображения. Если изображение меньше
формы, то оно размещается в левом верхнем углу формы и в дальнейшем не перемещается. Поэтому такой
способ хотя и прост, но очень неудобен.
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 50 из 76
Рис. 11.4. Диалоговое окно Load Picture поиска изображения для свойства Picture
Свойство picture доступно и в режиме выполнения приложения. Простым присвоением можно заменить
или убрать изображение из формы.
Объекты для работы с изображениями
Для размещения в форме графических изображений используются объекты image и picture. Им
соответствуют следующие значки на панели элементов управления:
Значок
Название
Создаваемый объект
Image
Image
PictureBox
Picture
Однако в качестве изображений, помещаемых в эти объекты, можно использовать только файлы
определенных типов. Допустимые типы файлов изображений представлены в табл. 11.1.
Таблица 11.1. Допустимые типы файлов изображений для графических объектов
Описание файла
Тип файла (расширение)
Битовый растровый файл
bmp
Независимый растровый файл
dib
Файл значка
ico,cur
Метафайл
wmf
Расширенный метафайл
emf
Растровый файл
gif
Растровый сжатый файл
jpg, Jpeg
Изображение размещается в объекте image так же, как объект в форме, то есть при помощи свойства
picture. Однако в отличие от размещения изображения непосредственно в форме, изображение в объекте
image пропорционально изменяет свои размеры.
Изменением размера управляет свойство Stretch. Если это свойство имеет значение False, то объект image
принимает размеры в соответствии с размером изображения. Если значение равно True, то размеры
изображения изменяются в соответствии с размерами объекта.
В отличие от image, элемент управления picture может работать как полноценный контейнер. Он может
содержать другие элементы управления, в нем можно рисовать, используя графические методы Line, circle,
point, pset, или выводить текст, используя метод print.
Элемент управления picture обладает свойством visible. При этом все изображения, помещенные в picture,
становятся видимыми или невидимыми в зависимости от установленного значения этого свойства. При
помощи объекта picture можно организовать простую анимацию, используя метод PaintPicture.
Изображение в элемент управления picture загружается полностью. При этом если оно больше размеров
picture, то видна только часть изображения, если меньше, — то изображение размещается в левом верхнем
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 51 из 76
углу. Если установить для свойства AutoSize объекта picture значение True, то изображение будет
пропорционально вписываться в объект picture.
Графические методы
В дополнение к графическим элементам управления в Visual Basic 6 существует набор графических
методов:
Метод
Назначение
Circle
Рисует окружность, дугу или эллипс
CIs
Очищает область вывода
Line
Рисует линии
PaintPicture
Рисует (загружает) изображение
Point
Возвращает цвет точки
Print
Выводит текст
Pset
Размещает точку
Замечание
Необходимо отметить, что метод Print предназначен для вывода текста и к графике имеет косвенное
отношение. Тем не менее, мы рассмотрим его вместе с графическими методами, поскольку он используется
совместно с другими методами графики для "рисования" текста в указанном объекте или совмещения
текста и чистой графики.
В графических методах используются функции вычисления цвета RGB и QBColor. Рассмотрим сначала эти
функции.
Вопросы для самоконтроля:
Элемент управления Shape
Элемент управления Frame
Метод Сls
Работа со шрифтами
Управление цветом
Рекомендуемая литература:
1.С.В.Симонович «Информатика. Базовый курс»
2."Освой самостоятельно Visual Basic 6.0 за 24 часа" Грэг Пери
3.Microsoft Visual Basic 4.0 Е.Адлеров
Дополнительная литература
Иллюстрированный самоучитель по Visual Basic 6.0
Лекция 12. Мультимедиа в Visual Basic.
Содержание лекционного занятия:
Общие понятия
Интерфейс MCI
Разработка простого проигрывателя при помощи элемента управления MCI
С помощью Visual Basic 6 можно полностью контролировать многочисленные устройства мультимедиа,
как стандартные, типа дисковода компакт-дисков, так и нестандартные. Трудно назвать задачи в области
мультимедиа, которые невозможно решить с помощью Visual Basic 6. Используя средства управления
мультимедиа, важно знать формат файла, с которым необходимо работать. При отсутствии файловой
структуры (как, например, у музыкального компакт-диска) необходимо знать тип устройства и иметь
драйвер производителя, чтобы управлять устройством.
Рассмотрим форматы файлов мультимедиа и типы устройств, с которыми можно работать при помощи
средств мультимедиа в Visual Basic 6.
Типы файлов мультимедиа
Интерфейс управления мультимедиа MCI в Visual Basic 6 поддерживает все основные типы
мультимедийных форматов файлов, список которых приведен в табл. 12.1.
Таблица 12.1. Основные типы файлов мультимедиа
Тип файла
AVI
Примечание
Видеофайл в формате AVI (Audio Visual Interleaved)
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 52 из 76
MPEG
Формат сжатого видеоизображения
MID, RMI
Последовательности в формате MIDI (Musical Instrument Digital Interface)
WAV
Звуковые файлы
Используя средства управления мультимедиа в Visual Basic б, вы должны знать тип файла, с которым
работаете в данный момент. При отсутствии файловой структуры информация в мультимедиа, как правило,
будет структурирована в виде треков. Например, для музыкального компакт-диска треки — это отдельные
музыкальные композиции, идентифицируемые номером трека.
Элемент управления MCI
Для управления мультимедиа служит элемент управления MCI MMControi, который позволяет выполнять
все необходимые действия с устройствами мультимедиа. Чтобы можно было использовать его в
приложении, необходимо подключить к проекту библиотеку Microsoft Multimedia Control 6.0 с помощью
диалогового окна Components, которое открывается командой Components (Компоненты) меню Project
(Проект). После подключения этой библиотеки на панели элементов управления появляется кнопка
MMControi создающая элемент управления MMControi (рис. 12.1).
Рис. 12.1. Элемент управления MMControl
Элемент управления мультимедиа MMControi состоит из панели с девятью кнопками, назначение которых
описано в табл. 12.3.
Таблица 12.3. Кнопки элемента управления MMControl
Кнопка
Название
Описание
Prev (Предыдущая)
Переход на записи (файла)
Next (Следующая)
Переход на конец записи (файла)
Step (Шаг )
Переход на шаг (кадр)
Back (Шаг )
Переход на шаг (кадр)
Pause(Пауза)
Приостановка воспроизведения или записи
Play(Воспроизведение)
Воспроизведение записи
Record (Запись)
Запись информации
Stop (Стоп)
Остановка воспроизведения или записи
Eject(Извлечь)
Извлечение носителя из устройства
Элемент управления MMControl имеет большое количество свойств, позволяющих управлять мультимедиа
(табл. 12.4).
Таблица 12.4. Основные свойства элемента управления MMControl
Свойство
Описание
AutoEnable
Автоматически делает доступным набор кнопок при готовности устройства к работе
BackEnabled
Делает доступной кнопку Back (Шаг )
EjectEnabled
Делает доступной кнопку Eject (Извлечь)
NextEnabled
Делает доступной кнопку Next (Следующая)
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 53 из 76
PauseEnabled Делает доступной кнопку Pause (Пауза)
PlayEnabled
Делает доступной кнопку Play (Воспроизведение)
PrevEnabled
Делает доступной кнопку Prev (Предыдущая)
RecordEnabled Делает доступной кнопку Record (Запись)
StepEnabled
Делает доступной кнопку Step (Шаг )
StopEnabled
Делает доступной кнопку Stop (Стоп)
BackVisible
Назначает видимость кнопки Back (Шаг )
EjectVisible
Назначает видимость кнопки Eject (Извлечь)
NextVisible
Назначает видимость кнопки Next (Следующая)
PauseVisible
Назначает видимость кнопки Pause (Пауза)
PlayVisible
Назначает видимость кнопки Play (Воспроизведение)
PrevVisible
Назначает видимость кнопки Prev (Предыдущая)
RecordVisible Назначает видимость кнопки Record (Запись)
StepVisible
Назначает видимость кнопки Step (Шаг )
StopVisible
Назначает видимость кнопки Stop (Стоп)
CanEject
Возвращает True, если носитель можно извлечь из устройства, в противном случае
возвращает False
CanPlay
Возвращает True, если устройство готово к воспроизведению, в противном случае
возвращает False
CanRecord
Возвращает True, если устройство готово к записи данных, в противном случае возвращает
False
CanStep
Возвращает True, если на устройстве возможно покадровое воспроизведение, в противном
случае возвращает False
Command
Устанавливает текущую команду для устройства
DeviceID
Устанавливает идентификатор
DeviceType
Устанавливает тип устройства (табл. 12.2)
Error
Возвращает последнюю ошибку MCI
ErrorMessage Возвращает сообщение о последней ошибке
FileName
Устанавливает файл для воспроизведения при файловой структуре носителя
Frames
Задает число пропускаемых командой Step шагов
hWndDisplay
Назначает дескриптор окна вывода
Length
Возвращает длину источника данных
Mode
Возвращает текущий режим работы устройства
Notify
Устанавливает возможность работы службы сообщений; если установлено значение True —
служба работает, если установлено значение False — служба не работает
NotifyMessage Задает сообщение, если включена служба сообщений
NotifyValue
Указывает результат последней команды MCI
Orientation
Назначает ориентацию элемента управления MMControl. Если установлено значение 0 —
ориентация горизонтальная, если установлено значение 1 — ориентация вертикальная
Position
Назначает текущую позицию на устройстве в соответствии со СВОЙСТВОМ TimeFormat
RecordMode
Определяет текущий'режим записи устройства, если у него есть запись
Shareable
Устанавливает доступ других программ к устройству MCI
Silent
Отключает звук
Start
Устанавливает начальную позицию на носителе
TimeFormat
Определяет формат времени
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 54 из 76
To
Устанавливает конечную позицию на носителе
Track
Задает номер отдельного трека, о котором возвращают информацию свойства TrackLength и
TrackPosition. С номером текущего трека это свойство не связано
TrackLength
Возвращает размер трека, номер которого установлен в свойстве Track
TrackPosition
Возвращает позицию на треке, номер которого установлен в свойстве Track, в соответствии
с форматом времени
Tracks
Возвращает количество треков на устройстве
Updatelnterval Устанавливает интервал выдачи события StatusUpdate
Свойства доступности (содержат в имени Enabled) дают возможность разрешать или запрещать работу
соответствующих кнопок.
Замечание
Кнопки в недоступном состоянии видны, но не нажимаются.
При помощи свойств видимости (содержат в имени visible) можно спрятать ненужные кнопки. Если
установить свойство видимости какой-либо из кнопок в значение False, то эта кнопка не будет
отображаться на панели кнопок ни в режиме проектирования, ни в режиме выполнения приложения.
Свойство AutoEnable дает возможность не беспокоиться об установке доступности кнопок в различных
режимах работы устройства мультимедиа. Если для этого свойства установлено значение True, то для
каждого режима работы устройства будет автоматически включаться доступность набора кнопок,
соответствующего этому режиму. Например, при воспроизведении компакт-дисков будет автоматически
установлена доступность кнопок Prev (Предыдущая), Next (Следующая), Play (Воспроизведение) и Eject
(Извлечь), если диск вставлен в привод. При запуске воспроизведения кнопка Play автоматически станет
недоступной, а кнопка Stop (Стоп) — доступной.
Как указано в табл. 12.4, свойство DeviceType элемента управления MMControl задает тип устройства,
который может принимать только заранее заданные текстовые значения для конкретных устройств.
Значения свойства DeviceType в соответствии с устройствами мультимедиа перечислены в табл. 12.5.
Таблица 12.5. Значения свойства DeviceType
Тип устройства
Текстовое значение
Файлы в формате AVI
AVIVideo
Музыкальный компакт-диск
CDAudio
Цифровая магнитная запись
DAT
Цифровое видео
DigitalVideo
Прочие устройства
Other
Покадровое видеоизображение
Overlay
Сканер
Scanner
Секвенсор
Sequenser
Видеомагнитофон
VCR
Проигрыватель видеодисков
VideoDisk
Файл в формате WAV
WaveAudio
Для устройств, не имеющих файловой структуры, позиционирование выполняется по значению позиции,
обычно выражающей время в закодированном (упакованном) виде, который определяется свойством
TimeFormat. Соответственно и все свойства позиционирования такого устройства оперируют со
значениями, заданными в формате упаковки. Все форматы упаковки перечислены в табл. 12.6.
Таблица 12.6. Значения свойства TimeFormat
Значение
Шаблон
Описание
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 55 из 76
0
mciFormatMilliseconds Время в виде целого четырехбайтного числа в миллисекундах
1
mciFormatHms
Упакованное четырехбайтное число по байтам начиная с младшего:
часы, минуты, секунды. Старший байт не используется
2
mciFormatMsf
Упакованное четырехбайтное число по байтам начиная с младшего:
минуты, секунды, номер кадра. Старший байт не используется
3
mciFormatFrames
Номер кадра в виде целого четырехбайтного числа
4
mciForittatSmpte24
24-кадровое (24 кадра за секунду) по стандарту SMPTE (Society of
Motion Picture and Television Engineers) упакованное четырехбайтное
число по байтам начиная с младшего: часы, минуты, секунды, номер
кадра
5
mciFormatSmpte25
25-кадровое (25 кадров за секунду) по стандарту SMPTE
четырехбайтное число, упакованное аналогично 24-кадровому
6
mciFo rmatSmpte30
30-кадровое (30 кадров за секунду) по стандарту SMPTE
четырехбайтное число, упакованное аналогично 24-кадровому
7
mciFormatSmpte30Drop
30-кадровое (30 кадров за секунду) по стандарту SMPTE
четырехбайтное число, упакованное аналогично 24-кадровому
8
mciFormatBytes
Номер байта в виде четырехбайтного целого числа
9
mciFormatSamples
Номер кванта (блока информации) в виде четырехбайтного числа
10
me i Fo rma t Titis f
Упакованное четырехбайтное число по байтам начиная с младшего:
номер трека, минуты, секунды, номер кадра
Замечание
Более подробно работа с форматом времени описывается в данной главе на примере доработки
проигрывателя музыкальных компакт-дисков.
Большинство событий элемента управления MMControl связано с кнопками. Например, для кнопки Back
существуют следующие события:

Backclick — возникает при нажатии на кнопку;

BackCompeted — возникает по завершению перемотки устройства;

BackGotFocus — возникает при установке фокуса на кнопку;

BackLostFocus — возникает при потере кнопкой фокуса.
Аналогичные события существуют для всех кнопок элемента управления MMControl и для
соответствующей каждой кнопке команды.
Необходимо обратить внимание на событие statusUpdate, которое является "таймером" элемента
управления MMControl и генерируется самим объектом. Интервал этого события устанавливается в
свойстве updateinterval в миллисекундах. Это событие можно использовать для вывода различной
информации о состоянии выполнения команд во время работы.
Настройка элемента управления MMControl очень проста и выполняется с помощью диалогового окна
Property Pages (Страницы свойств). Для вызова этого окна (рис. 12.2) необходимо выполнить команду
Property Pages меню View (Вид). Основной вкладкой настройки является вкладка Controls (Кнопки
управления). На этой вкладке можно назначить доступность и видимость каждой кнопки элемента
управления, установив соответствующие флажки рядом с изображением кнопки. При этом названия
флажков, как видно из рис. 12.2, соответствуют свойствам доступности и видимости каждой из кнопок
(табл. 12.3).
Управление мультимедиа выполняется при помощи команд (табл. 12.7), которые соответствуют кнопкам
элемента управления MMControl. Кроме того, элемент управления MMControl выполняет команды поиска,
сохранения, открытия/закрытия устройства.
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 56 из 76
Рис. 12.2. Настройка кнопок элемента управления МСI на вкладке Controls
Таблица 12.7. Команды элемента управления MMсопtrol
Команда
Назначение
Open
Открывает файл (устройство) для работы
Close
Закрывает файл (устройство)
Prev
Переходит в предыдущего трека. Если это первый трек или файл, то переход осуществляется в
этого трека, файла
Next
Переходит в следующего трека. Если это последний трек или файл, то переход осуществляется в
этого трека, файла
Step
Переходит на шаг (кадр) по треку (файлу)
Back
Переходит на шаг (кадр) по треку (файлу)
Pause
Приостанавливает работу устройства
Play
Воспроизводит информацию с устройства
Record
Записывает информацию
Stop
Останавливает работу устройства
Eject
Извлекает носитель из устройства (компакт-диск из привода)
Save
Сохраняет открытый файл
Seek
Находит позицию (трек) в файле или на устройстве
Изучим элемент управления MMControl на примерах.
Проигрыватель аудиофайлов WAV
Для изучения работы элемента управления MMControi создадим приложение для проигрывателя звуковых
файлов в формате WAV. Чтобы создать такой проигрыватель, выполните следующие действия:
1. Создайте новый стандартный проект. Для этого в меню File (Файл) выберите команду New Project
(Создать новый проект) и в окне выбора типа проекта дважды щелкните мышью на значке Standard EXE.
2. Присвойте проекту имя MyMultiMedia. Для этого откройте окно свойств проекта, выбрав команду
Projecti Properties (Свойства Project 1) меню Project (Проект). После переименования проекта эта команда
именуется MyMultiMedia Properties.
3. Присвойте форме проекта имя Formplayer. В свойство caption формы введите заголовок Мультимедиа
плейер.
4. Присоедините к проекту библиотеку компонентов Microsoft Multimedia Control 6.0, воспользовавшись
диалоговым окном Components (Компоненты), которое открывается в меню Project (Проект) командой
Components.
5. Нам потребуется диалоговое окно поиска проигрываемых файлов, поэтому установите также в окне
Components флажок для библиотеки компонентов Microsoft Common Dialog Control 6.0.
6. Добавьте в форму Formplayer элемент управления MMControl, дважды щелкнув мышью кнопку
MMControl на панели элементов управления, и присвойте ему имя MMControlCDPlayer.
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 57 из 76
7. Добавьте в форму элемент управления commonDialog, дважды щелкнув мышью кнопку CommonDialog
на панели элементов управления, и присвойте ему имя cdplayer.
8. Добавьте в форму Formplayer кнопку управления типа ConroandButton, дважды щелкнув мышью кнопку
CommandButton на панели элементов управления. Назовите эту кнопку cbFindFile и введите в свойство
caption значение Найти файл. По событию click созданной в форме кнопки cbFindFile будет открываться
диалоговое окно для поиска воспроизводимых файлов.
Созданный проект представлен на рис. 12.3.
Рис. 12.3. Вид проигрывателя файлов WAV при проектировании
9. Откройте окно редактора и введите следующий код:
Private Sub Form_Load()
MMControlCDPlayer.Notify = False
MMControlCDPlayer.Wait = True
MMControlCDPlayer.Shareable = False
MMControlCDPlayer.DeviceType = "WaveAudio"
End Sub
Private Sub cbFindFile_Click ()
cdPlayer.ShowOpen
MMControlCDPlayer.FileName = cdPlayer.FileName
MMControlCDPlayer.Command = "Open"
End Sub
Private Sub Form Unload(Cancel As Integer)
MMControlCDPlayer.Command = "Close"
End Sub
Этот код при загрузке формы назначает элементу управления MMControlCDPlayer свойства, необходимые
для работы с файлами формата WAV.
10. Запустите приложение. При нажатии кнопки Найти файл открывается диалоговое окно Открытие
файла, позволяющее осуществить поиск, а затем открыть файл для воспроизведения. Далее можно
работать с выбранным файлом при помощи кнопок элемента управления
MMControlCDPlayer.
На рис. 12.4 показан проигрыватель в режиме выполнения.
Рис. 12.4. Вид проигрывателя файлов WAV в режиме выполнения
Замечание
Полностью проверить работу приложения (услышать звук) можно только при наличии устройства
воспроизведения звука, например, звуковой карты и колонок.
Вопросы для самоконтроля:
Типы управляемых устройств
Проигрыватель видеофайлов
Проигрыватель музыкальных компакт-дисков
Рекомендуемая литература:
1.С.В.Симонович «Информатика. Базовый курс»
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 58 из 76
2."Освой самостоятельно Visual Basic 6.0 за 24 часа" Грэг Пери
3.Microsoft Visual Basic 4.0 Е.Адлеров
Дополнительная литература
Иллюстрированный самоучитель по Visual Basic 6.0
Лекция 13. Создание справочной системы приложения.
Содержание лекционного занятия:
Создание справочной системы в формате WinHelp
Создание справочной системы в формате HTML
Использование справочной системы в приложениях
Создание справочной системы в формате WinHelp
Основу справочной системы составляют темы с пояснительным текстом. Содержание справочной системы
включает список тем, доступных в системе. Каждая тема имеет заголовок и уникальный символьный
идентификатор. Дополнительно каждой теме можно поставить в соответствие уникальный индекс темы,
который должен быть целым числом.
Для поиска темы в справочной системе служат ключи, содержащие название темы и ссылку на нее. Каждая
тема может иметь более одного ключа поиска. Кроме того, один ключ может содержать ссылку на
несколько тем.
Для организации контекстного вызова темы из справочной системы вы можете использовать числовые
значения индексов или значения ключа. Употребление идентификаторов тем для контекстного вывода
справочной информации не допускается.
Чтобы связать между собой отдельные темы, применяются перекрестные ссылки. При этом текст,
используемый для организации перекрестной ссылки, выделяется зеленым цветом и подчеркиванием.
В описании любой системы присутствуют специфические термины. Например, в системах складского учета
к таким терминам относятся накладном, счет, отпуск товара. Термином может быть не только отдельное
слово, но и любая фраза из текста темы. Справочная система Windows позволяет дать краткое определение
каждому термину приложения. Такие термины на экране выделены зеленым цветом и пунктирным
подчеркиванием. Если щелкнуть мышью на термине, для которого определено краткое описание, оно
появится на экране в рамке поверх текста темы.
Создание справочной системы в формате WinHelp включает следующие этапы:
1. Создание описания справочной системы. Для этого можно использовать любой текстовый редактор,
поддерживающий формат RTF. Описание содержит темы, индексы и ключи справочной системы.
Структура документа должна соответствовать требованиям, предъявляемым компилятором справочной
системы (Help Compiler).
2. Формирование файла с расширением cnt, содержащего иерархическое создаваемой справочной системы.
3. Формирование текстового файла с расширением hpj, содержащего параметры для компиляции
справочной системы: имя файла с описанием справочной системы, заголовок справочной системы.
4. Компиляция созданного текстового описания с использованием Help Compiler, входящего в комплект
Visual Basic.
5. Определение свойства HelpContextiD для требуемых объектов формы, а также создание в приложении
кнопок и пунктов меню для вызова справочной системы.
Рассмотрим только средства, наиболее часто используемые при создании справочной системы. Подробную
информацию вы найдете в руководстве по применению Help Compiler. В качестве примера создадим
простую справочную систему, состоящую из нескольких тем. Для каждой темы определим заголовки,
идентификаторы и ключи, служащие для поиска информации.
Замечание
При разработке справочной системы крупных приложений используются, как правило, специальные
средства, например ForeHelp, содержащие интегрированную среду.
Создание справочной системы в формате HTML
В поставку Visual Basic 6 входит HTML Help Workshop, который, как и Help Workshop для WinHelp,
позволяет создать справочную систему приложения. Для организации справочной системы в формате
HTML выполните следующие действия:
1. Задайте темы справочной системы, сохраняя при этом каждую тему в отдельном HTML-файле. Для
создания этих файлов вы можете использовать любой редактор файлов HTML, например, Microsoft Word.
2. Запустите программу HTML Help Workshop и постройте новый проект справочной системы. С помощью
мастера проекта включите в проект ранее созданные файлы с темами. Определите свойства проекта.
Замечание
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 59 из 76
Если у вас имеется ранее созданный проект справочной системы в формате WinHelp, то с помощью мастера
вы можете преобразовать его в проект формата HTML.
3. Укажите псевдоним для каждой темы.
4. Создайте файл, содержащий описание связи между псевдонимами тем и соответствующими им
целочисленными значениями индексов тем. Включите этот файл в проект.
5. Создайте ключи для поиска тем справочной системы.
6. Сохраните все файлы проекта и скомпилируйте его.
7. В создаваемом на Visual Basic приложении укажите файл справочной системы (с расширением chm) в
окне свойств проекта.
8. Для каждого объекта приложения, с которым связана тема справочной системы, задайте свойство
HelpContextID.
Окно HTML Help Workshop
Окно программы HTML Help Workshop состоит из двух частей. В левой части находятся вкладки Project
(Проект), Contents (Содержание), Index (Указатель) и Help (Справка). Слева от каждой вкладки размещена
соответствующая панель инструментов.
В правой части окна отображается содержимое выбранной темы справочной системы в виде файла HTML.
Вы можете не только просматривать этот файл, но и редактировать его с помощью команд меню Tags
(Тэги) и кнопок панели инструментов.
HTML Help Workshop предоставляет возможность просматривать файлы с темами в Web-браузере. Для
этого выберите имя требуемого файла в разделе [Files] и нажмите кнопку Display in Browser (Отобразить в
браузере).
Определение параметров проекта справочной системы
Параметры проекта отображаются в разделе [Options] вкладки Project. Для их редактирования нажмите
кнопку Change Project Options (Изменить параметры проекта) на панели инструментов вкладки.
Откроется диалоговое окно Options, которое содержит четыре вкладки: General (Общие), Files (Файлы),
Compiler (Компилятор) и Merge Files (Объединяемые файлы).
На вкладке General вы определяете:

заголовок окна справочной системы;

файл темы и окно, которые выбираются при открытии справочной системы;

язык справочной системы.
Вкладка Files используется для указания расположения файлов справочной системы, а также файлов с
указателями и м. На вкладке Compiler задаются параметры компиляции справочной системы.
Определение псевдонимов тем
Чтобы справочную систему можно было использовать в приложениях, вы должны определить псевдоним
каждой темы. Для этого откройте диалоговое окно HtmlHelp API information, нажав одноименную кнопку
на панели инструментов вкладки Project, и перейдите на вкладку Alias.
После нажатия кнопки Add (Добавить) и задания в диалоговом окне Alias (Псевдоним) псевдонима и
имени связанного с ним файла темы в справочную систему будет добавлен новый псевдоним.
Определение связи между псевдонимами и индексами тем
Для открытия определенной темы справочной системы используются индексы тем. Связь между
псевдонимами тем и соответствующими им целочисленными значениями индекса тем задается в отдельном
текстовом файле. В нем вы должны описать все идентификаторы, по которым будет осуществляться
контекстный вызов. Данный файл состоит из строк, содержащих ключевое слово #Define, за которым
следуют разделенные пробелом идентификатор и индекс темы. Пример приведен ниже:
#Define IDH_CUSTOMER 3
#Define IDH_GOODS 4
После создания файла связи вы должны связать его с файлом проекта. Для этого в диалоговом окне
HtmlHelp API information перейдите на вкладку Map и добавьте его в список подключаемых файлов.
Определение темы справочной системы для элементов управления
Для связывания формы, элементов управления с темами справочной системы необходимо, прежде всего,
определить для проекта файл справки. С помощью команды Properties меню Project откройте окно свойств
проекта и введите в поле Help File Name (Имя файла справочной системы) имя файла справочной системы
с полным путем к нему.
Затем необходимо задать для объектов формы или для самой формы свойство HelpContexID, которое
использует индекс темы, заданный в разделе [MAP] файла проекта справочной системы.
Если вы установили это свойство, то во время просмотра формы нажатие клавиши <F1> приведет к
открытию указанной темы справочной системы.
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 60 из 76
Вопросы для самоконтроля:
Перекрестные ссылки
Пояснения к терминам
Определение параметров компиляции
Создание содержания справочной системы
Рекомендуемая литература:
1.С.В.Симонович «Информатика. Базовый курс»
2."Освой самостоятельно Visual Basic 6.0 за 24 часа" Грэг Пери
3.Microsoft Visual Basic 4.0 Е.Адлеров
Дополнительная литература
Иллюстрированный самоучитель по Visual Basic 6.0
Лекция 14. Разработка компонентов ActiveX.
Содержание лекционного занятия:
Основные сведения об ActiveX-компонентах
Создание элементов управления ActiveX
Проверка и компиляция нового элемента управления ActiveX
Основные сведения об ActiveX-компонентах
Основные понятия технологии ActiveX — компоненты ActiveX, объектные модели СОМ (Component Object
Model, модель составных объектов) и DCOM (Distributed СОМ).
Компоненты ActiveX — это элементы управления ActiveX, документы ActiveX, источники данных (ADO
или RDO), выполняемые файлы ActiveX ЕХЕ и библиотеки ActiveX DLL. Компоненты представляют собой
отдельные файлы ОСХ, ЕХЕ или DLL и могут использоваться для создания классов объектов или
выполнения каких-либо функций приложения.
Фактически компонент ActiveX — это отдельный проект, содержащий набор элементов управления,
классов и других программных модулей, скомпилированный затем в файл ОСХ, ЕХЕ или DLL в
зависимости от целей применения этого компонента.
При разработке компонентов ActiveX необходимо исходить из целей применения этих компонентов.
Можно создать целый набор элементов управления в одном файле ОСХ для настольных приложений,
однако из-за большого размера файла они будут медленно работать в Internet-приложениях. Для работы в
Internet эти элементы управления необходимо выделить в отдельные файлы небольшого размера.
Компоненты ActiveX основаны на программной модели СОМ, которая обеспечивает межплатформенные
возможности технологии ActiveX.
Модель составных объектов (СОМ)
Модель составных объектов представляет собой программную модель, а именно: набор стандартных
сервисов (функций) и спецификаций (стандартов обмена, стандартов вызова функций), обеспечивающих
реализацию объектно-ориентированного подхода для разработки приложений клиент/сервер, работающих в
том числе и в Internet, точнее, в первую очередь в Internet. Причем данная модель работает вне зависимости
от среды проектирования, с условием, конечно, что эта платформа (среда проектирования) поддерживает
модель СОМ.
Модель СОМ определяет стандартный внутренний интерфейс между объектами и методику существования
(создание объекта, инициализация объекта, завершение работы объекта) и взаимодействия объектов (вызов
функций, обмен данными между объектами). Этот интерфейс обеспечивает взаимодействие любых
объектов модели СОМ между собой.
Программная модель СОМ имеет открытую архитектуру, что дополняет гибкость модели и возможность
работы с любой платформой.
Создание элементов управления ActiveX
Элементы управления ActiveX — один из типов компонентов ActiveX. Рассмотрим возможности их
создания и использования в Visual Basic 6.
Создание элементов управления состоит из ряда этапов.

Постановка задачи на проектирование элемента управления ActiveX. На этом этапе определяется
его внешний вид, то, какими свойствами и методами он должен обладать, на какие события должен
реагировать, а также какие готовые элементы управления потребуются для его создания.

Проектирование вида создаваемого элемента управления, сборка элемента управления из готовых
элементов, если в этом есть необходимость.

Добавление событий.

Добавление методов элемента управления. Добавление необходимых свойств. Проектирование
страницы свойств.
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 61 из 76

Проверка и тестирование вновь созданного элемента управления ActiveX, в том числе с
использованием Internet, если он создан для работы в сети.

Доработка по итогам проверки элемента управления.

Компиляция файла, то есть создание файла компонента.
Замечание
Проверка и доработки могут быть циклическими. После полной проверки можно выполнить компиляцию и
получить файл нового компонента ActiveX. Этот файл можно подключать к проекту так же, как и все
стандартные компоненты.
Рассмотрим более подробно этапы создания элемента управления ActiveX на примере кнопки управления
типа commandButton, предназначенной для открытия бланка новой формы.
Проектирование вида элемента управления
Чтобы создать новый элемент управления ActiveX, откройте новый проект типа ActiveX Control. Для этого
в меню File (Файл) выберите команду New Project (Создать новый проект) и в открывшемся диалоговом
окне New Project (рис. 14.1) дважды щелкните мышью на значке ActiveX Control.
Рис. 14.1. Выбор типа нового проекта для создания элемента управления ActiveX
В открытом проекте по умолчанию находится объект типа UserControl, в котором размещаются все вновь
создаваемые или вставляемые элементы управления. Этот объект служит контейнером для содержащихся в
нем объектов, размещаемых при проектировании нового элемента управления ActiveX. Все свойства и
события объекта UserControl можно в дальнейшем использовать при программировании вновь
создаваемого элемента управления.
В нашем примере для создания кнопки управления выполните следующие действия:
1. Откройте новый проект, как было указано выше.
2. Присвойте проекту имя MyCBNewForm. Для этого в меню Project (Проект) выберите команду Projecti
Properties (Свойства Project 1) и в поле Project Name открывшегося окна свойств проекта введите
требуемое имя.
3. Сохраните проект под тем же именем, выбрав команду Save Project As (Сохранить проект как) меню File
(Файл).
4. Добавьте в контейнер элемент управления commandButton, дважды щелкнув мышью кнопку
CommandButton ЩЯ на панели элементов управления. Присвойте этой кнопке имя cbNewForm.
5. Чтобы поместить на кнопку графическое изображение, установите для свойства style значение 1Graphical.
Воспользовавшись свойством picture кнопки, поместите на нее желаемое изображение, которое можно
взять, например, из коллекции значков в каталоге \Common\Graphics\Bitmaps\OfrCtlBr\Small\Color\.
Воспользуемся изображением New.bmp. С помощью свойств Disabiedpicture и Downpicture можно задать
изображения, отображаемые на кнопке, в тех случаях, когда она недоступна или находится в нажатом
состоянии.
Полученная кнопка показана на рис. 14.2, однако ее необходимо еще немного доработать.
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 62 из 76
Рис. 14.2. Новый элемент управления cbNewForm в контейнере UserControl
Чтобы при использовании созданной кнопки не было видно полей контейнера, переместите кнопку в левый
верхний угол контейнера.
С той же целью установите размеры объекта-контейнера равными размерам кнопки.
Полученная кнопка показана на рис. 14.3.
Рис. 14.3. Окончательный вид нового элемента управления cbNewForm
В принципе, уже в таком виде вновь полученную кнопку (объект типа cbNewForm) можно вставлять в свои
приложения. При этом кнопка cbNewForm созданного элемента управления появится на панели элементов
управления.
Замечание
Прежде чем использовать созданную кнопку в проекте, ее необходимо подключить к проекту. О
подключении элемента управления ActiveX к проекту будет сказано чуть позже.
По умолчанию все новые элементы управления представлены на панели элементов одним типовым
значком Отличить их можно только по подсказке, появляющейся при установке курсора на значок. Она
соответствует наименованию этого элемента управления, заданному свойством Name. Для замены типового
значка на пользовательский используется свойство ToolboxBitmap элемента управления userControl
(контейнера нашей кнопки). Чтобы изменить значок, откройте диалоговое окно Load Bitmap (Загрузить
значок), нажав на кнопку с тремя точками в поле свойства ToolboxBitmap, найдите требуемый значок и
нажмите кнопку Открыть или дважды щелкните кнопкой мыши на найденном файле значка.
Полученная в таком виде кнопка еще не совсем готова к использованию. Для того чтобы кнопка стала
полноценным элементом управления ActiveX и выполняла заданные действия, а также обладала
необходимыми свойствами и работала с событиями, их необходимо добавить в наш элемент управления
cbNewForm. Рассмотрим, как в элемент управления ActiveX добавляются новые события, методы и
свойства, называемые членами элемента управления.
Проверка элемента управления ActiveX
Для простой проверки созданного элемента управления ActiveX можно запустить его на выполнение. При
этом запустится браузер Internet с новым элементом управления. Если браузер запускается, значит явных
ошибок при проектировании элемента управления не обнаружено, и можно проводить полноценную
проверку его работы.
Полноценную проверку можно провести, только используя новый элемент управления в приложениях, по
крайней мере, двумя способами.

При помощи группы проектов.

Подключением к проверочному проекту скомпилированного в файл компонентов (файл с
расширением осх) нового элемента управления с помощью диалогового окна Components, открываемого
командой Components (Компоненты) меню Project (Проект).
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 63 из 76
Рассмотрим сначала первый способ, как более простой и не требующий процесса компиляции. Для первой
проверки данный способ хорош еще и тем, что в процессе проверки в новый элемент управления ActiveX
можно вносить изменения.
В составе проверочной группы проектов должны быть, как минимум, два проекта:

стандартный проект, проверяющий работу нашего элемента управления, формы которого должны
содержать этот элемент управления ActiveX;

проект самого элемента управления ActiveX. В нашем случае это проект кнопки cbNewForm.
Создадим тестовую группу проектов. Для этого выполните следующие действия:
1. Откройте новый стандартный проект.
2. Добавьте в него проект, содержащий кнопку cbNewForm, воспользовавшись командой Add Project
(Добавить проект) меню File (Файл).
3. Разработайте форму с использованием нового элемента управления.
Созданная группа может служить для проверки работы нового элемента управления (рис. 14.21). После
подключения проекта кнопки ее значок появляется на панели элементов управления.
Рис. 14.21. Группа проектов для проверки работы элемента управления ActiveX
Необходимо помнить, что Visual Basic 6 не разрешает работать одновременно с двумя проектами вне
группы проектов. Поэтому при создании тестовой группы проект элемента управления должен быть
закрыт, если вы работали с ним в отдельном сеансе Visual Basic 6. Работая с группой проектов, все
необходимые изменения и доработки можно вносить и в проект элемента управления.
Разумеется, более полная проверка выполняется при подключении нового компонента к тестовому проекту.
Доработка программного кода элемента ActiveX
При проверке нового элемента управления могут быть выявлены недостатки, которые необходимо
устранить. Например, если в режиме проектирования попробовать поменять размеры созданной вами
кнопки в форме, растягивая ее за край, то будут изменяться размеры контейнера, а не кнопки. Чтобы
устранить этот недостаток, необходимо привязать края кнопки к краям контейнера. Это можно сделать с
помощью события Resize контейнера, возникающего при изменении размеров последнего, введя
следующий код:
Private Sub UserControl Resize()
cbCalculate.Height = UserControl.ScaleHeight
cbCalculate.Width = UserControl.Width
End Sub
В тексте этого кода при каждом изменении размеров контейнера соответственно изменяется размер кнопки
до максимальных размеров контейнера.
Вопросы для самоконтроля:
Модель распределенных составных объектов (DCOM)
Добавление методов
Создание свойств, событий и методов с помощью мастера ActiveX Control Interface Wizard
Компиляция элемента управления в файл компонентов ActiveX
Рекомендуемая литература:
1.С.В.Симонович «Информатика. Базовый курс»
2."Освой самостоятельно Visual Basic 6.0 за 24 часа" Грэг Пери
3.Microsoft Visual Basic 4.0 Е.Адлеров
Дополнительная литература
Иллюстрированный самоучитель по Visual Basic 6.0
Лекция 15. Создание собственных классов.
Содержание лекционного занятия:
Основные понятия ООП
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 64 из 76
Создание собственных классов
Создание классов форм
Создание классов с помощью VB Class Builder
Основные понятия ООП
При разработке приложений для изучения основ Visual Basic 6 в предыдущих главах уже использовались
понятия класса и объекта, но их значение не раскрывалось. Попробуем в этом разделе разобраться, что
такое класс, и что такое объект.
Объектно-ориентированный подход в программировании предлагает все, что входит в состав приложения,
считать объектами, которые взаимодействуют друг с другом и с пользователем в соответствии с заданными
в программе свойствами и поведением, выполняя необходимые функции приложения. Таким образом,
любое приложение при данном подходе представляет собой набор взаимосвязанных объектов,
реализующих необходимые функциональные требования, предъявленные к приложению.
Объект
Объект — это некая отдельная сущность, выделяющаяся среди других сущностей особыми свойствами,
поведением, взаимодействием с себе подобными объектами приложения. Объект всегда конкретен и
реально существует в форме или в приложении, обладая при этом только ему присущими свойствами и
поведением. Признаками объектов, отличающих их друг от друга, являются их свойства и поведение.
Объект характеризуется следующими основными понятиями.

Метод — это функция или процедура, которая реализует возможные с объектом действия.

Событие — это средство взаимодействия объектов друг с другом. Объекты генерируют заданные
события и выполняют действия в ответ на заданные события. События — это аналог сообщений, которые
получают и отправляют объекты.

Состояние — каждый объект всегда находится в определенном состоянии, которое характеризуется
набором свойств объекта. Под воздействием событий объект переходит в другие состояния. При этом
объект может сам генерировать события о переходе в другое состояние.

Свойство — признак, некоторое отдельное качество (параметр) объекта. Например, свойствами
могут быть размеры объекта, заголовок, его наименование. Совокупность свойств объекта определяет его
состояние. Как правило, свойства — это набор переменных и констант, в которых хранятся значения,
определяющие параметры объекта.
Класс
Объекты, имеющие общие свойства и поведение, объединяются в классы. Таким образом, класс можно
определить как некую общность конкретных объектов, как описание объекта — каким он должен быть и
что должен делать.
Если объекты существуют в приложениях, то класс — это абстракция, объединяющая объекты в одну
группу согласно их свойствам и поведению в среде окружения, в которой они существуют и
взаимодействуют. Класс, таким образом, является некоей абстракцией, так как он не существует в
работающем приложении.
Например, кнопка в форме со всеми своими конкретными свойствами и действием является объектом
класса commandButton.
Создание собственных классов
Для создания классов используются команды Add Class Module (Добавить модуль класса) или Add User
Control (Добавить пользовательский элемент управления), если это класс элементов управления, меню
Project (Проект). Для изучения возможностей создания классов создадим класс подразделений некой
фирмы со следующими атрибутами:

Шифр подразделения

Наименование подразделения

Шифр вышестоящего подразделения

Руководитель подразделения

Фонд заработной платы подразделения

Премиальный фонд подразделения
Для создания такого класса выполните следующие действия:
1. Создайте новый проект типа Standard EXE и назовите его MyClass при помощи страницы свойств
проекта, вызываемой командой Project1 Properties меню Project (Проект).
2. Форму приложения Fonn1, создаваемую в проекте автоматически, переименуйте В frmMyClass.
3. Командой Add Class Module меню Project (Проект) добавьте в проект новый модуль класса. В окне
проводника проекта появится группа Class Modules.
4. Используя свойство Name окна Properties (Свойства), вызываемого командой Properties Window (Окно
свойств) меню View (Вид), присвойте классу
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 65 из 76
ИМЯ cIsDepartment (рис. 15.1).
5. Теперь, чтобы определить объект данного класса, необходимо в окне редактора формы или модуля
ввести следующий код:
Dim objDep As New cIsDepartment
или
Dim objDep As Object
Set objDep = New cIsDepartment
Рис: 15.1. Проект MyClass с вновь созданным классом cIsDepartment
Создание класса формы
Вначале займемся созданием класса формы. Выполните следующие действия:
1. Откройте новый проект типа Standard EXE.
2. Используя диалоговое окно свойств проекта, открываемое командой Projecti Properties меню Project,
назовите проект classForms.
3. С помощью окна свойств Properties (Свойства), открываемого командой Properties Window меню View
или командой Properties контекстного меню, переименуйте форму в frmFormcis.
4. Добавьте в форму элемент управления типа commandButtom, дважды щелкнув мышью кнопку
CommandButtom на панели элементов управления. Можно не изменять имени кнопки, заданного по
умолчанию. Используя свойство Caption, задайте название кнопки Создать новый объект.
Выполненный проект показан на рис. 15.5.
Рис. 15.5. Приложение для изучения класса форм
5. В окно редактора введите следующий код:
Private Sub Commandl_Click()
Dim FormNew As New frmFormCIs
FormNew.Show
End Sub
6. Запустите приложение на выполнение. При нажатии на размещенную в форме кнопку создаются объекты
класса frmFormcis, то есть, проектируя форму, вы спроектировали целый класс форм.
При многократном вызове объектов этого класса создается коллекция объектов, и каждая форма при этом
является членом коллекции. Для идентификации конкретного члена используется индекс членов
коллекции, при помощи которого можно сослаться на любую форму из коллекции или получить
управление конкретной формой. Для форм в Visual Basic 6 существует специальная коллекция Forms, при
помощи которой можно адресоваться к конкретной форме. Чтобы изучить данное свойство коллекции
форм, усовершенствуйте приложение следующим образом:
1. Добавьте в приложение еще один элемент управления типа commandButton и задайте наименование
созданной кнопки Переход к объекту. Имя кнопки можно оставить заданным по умолчанию (рис. 15.6).
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 66 из 76
Рис. 15.6. Приложение для изучения адресации к объектам класса форм
2. Измените код приложения в соответствии с указанным ниже:
Dim frmCount As Integer
Dim frmCountMax As Integer
Private Sub Commandl_Click()
' Создание объекта
Dim FormNew As New frmFormCIs
FormNew.Show
frmCountMax = frmCountMax + 1
End Sub
Private Sub Command2_Click()
' Переход к объекту
Forms(frmCount).Caption = "Форма-объект " + Str(frmCount)
Forms(frmCount).Show
frmCount = frmCount + 1
If frmCount > frmCountMax Then frmCount = 0
End Sub
Private Sub Form Load()
frmCount = 0
frmCountMax = 0
End Sub
В этом приложении при нажатии кнопки Переход к объекту активизируется соответствующий объект
класса frmFormCIs и изменяется одно из его свойств, в данном случае свойство заголовка окна. При этом,
конечно, доступны и все другие свойства объекта.
Для изучения возможности обращения к объектам формы экземпляра класса frmFormCis доработайте
приложение следующим образом:
1. Добавьте в форму текстовое поле типа TextBox, дважды щелкнув мышью кнопку TextBox на панели
элементов управления, и присвойте ей имя txtFormNum. Из свойства Text удалите текст, введенный по
умолчанию.
2. Измените текст кода для объекта command2 на следующий:
Private Sub Coiroiand2_Click ()
' Переход к объекту
Forms(frmCount).Caption = "Форма-объект " + Str(frmCount)
Forms(frmCount).Show
' Адресация к объекту формы
Forms(frmCount).txtFormNum.Text = frmCount
frmCount = frmCount + 1
If frmCount > frmCountMax Then frmCount = 0
End Sub
В этом тексте продемонстрировано, как адресоваться к одному и тому же объекту в формах, которые
являются экземплярами класса frmFormCis, с помощью установки значения свойства Text этого объекта.
Как видите, при помощи такого описания классов форм можно создавать достаточно сложные формы и
использовать их в качестве классов в последующих разработках.
Создание классов с помощью VB Class Builder
Для создания сложных классов или доработки уже имеющихся в среде Visual Basic 6 предусмотрено
специальное инструментальное средство — построитель классов Class Builder.
Замечание
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 67 из 76
Построитель классов подключается к среде проектирования с помощью диспетчера надстроек командой
Add-In Manager (Диспетчер надстроек) меню Add-Ins (Надстройки). В окне диспетчера Add-In Manager
необходимо назначить загрузку построителя классов, установив флажок загрузки для значения VB6 Class
Builder Utility.
Построитель классов
После присоединения построителя классов к среде проектирования, команда запуска построителя классов
Class Builder (Построитель классов) появляется в меню Add-Ins. При работе над проектом построитель
классов можно также вызвать с помощью значка VB Class Builder в диалоговом окне Add Class Module
(рис. 15.7), которое открывается командой Add Class Module (Добавить модуль класса) меню Project
(Проект).
Рис. 15.7. Диалоговое окно Add Class Module для запуска построителя классов
При запуске построителя классов открывается окно Class Builder (рис. 15.8) для проектирования классов, в
котором выполняется вся работа по созданию или дополнению класса. Это окно состоит из четырех
вкладок:

Properties (Свойства) — вкладка для работы со свойствами;

Methods (Методы) — вкладка для работы с методами;

Events (События) — вкладка для работы с событиями;

All (Все) — вкладка, на которой представлены все члены класса.
Рис. 15.8. Окно построителя классов Class Builder
Построитель классов содержит собственное меню и панель инструментов с кнопками, назначение которых
описано в табл. 15.1.
Таблица 15.1. Кнопки окна построителя классов Class Builder
Кнопка
Название
Назначение
Add New Class
(Добавить новый класс)
Добавляет новый класс. Дублирует команду Class (Класс),
появляющуюся при выборе в меню File (Файл) построителя
команды New (Новое)
Add New Property to Current Class
Добавляет новое свойство в класс. Дублирует команду Property
УМКД 042-14.2.07.1.20.8/03-2012
(Добавить новое свойство в
текущий класс)
Ред. № 1 от 03.09.2012г.
Страница 68 из 76
(Свойство), появляющуюся при выборе в меню File (Файл)
построителя команды New (Новое)
Add New Method to Current Class Добавляет новый метод в класс. Дублирует команду Method
(Добавить новый метод в текущий (Метод), появляющуюся при выборе в меню File (Файл)
класс)
построителя команды New (Новое)
Add New Event to Current Class
(Добавить новое событие в
текущий класс)
Добавляет новое событие в класс. Дублирует команду Event
(Событие), появляющуюся при выборе в меню File (Файл)
построителя команды New (Новое)
Show Properties for the Current
Object (Показать свойства
текущего объекта)
Показывает свойства текущего члена класса. Соответствует
команде Properties (Свойства) меню Edit (Правка)
Cut (Вырезать)
Вырезает выделенное в буфер
Copy (Копировать)
Копирует выделенное из буфера
Paste (Вставить)
Вставляет информацию из буфера
Кроме этих кнопок, дублирующих команды меню, в меню построителя классов Class Builder есть одна
важная команда, которая не продублирована кнопкой. Это команда Update Project (Внести изменения в
проект). При выполнении данной команды внесенные в классы проекта изменения запоминаются для
последующего сохранения в файлах классов.
Вопросы для самоконтроля:
Свойства класса
Методы класса
Добавление свойств класса
Добавление нового класса
Рекомендуемая литература:
1.С.В.Симонович «Информатика. Базовый курс»
2."Освой самостоятельно Visual Basic 6.0 за 24 часа" Грэг Пери
3.Microsoft Visual Basic 4.0 Е.Адлеров
Дополнительная литература
Иллюстрированный самоучитель по Visual Basic 6.0
Лабораторные занятия
Лабораторная работа №1
Тема: Линейные алгоритмы
Цель: Изучить структуру программы, типы переменных, основные операции и приоритет их выполнения.
Ход занятия:
1. Работа в Visual Basic
2. Составим программу вычисления выражения
3. Выберите из меню Вставка команду UserForm
4. Измените свойство Caption
5. Измените свойство Text
6. Измените свойство Name
7. Измените свойство Name на "YS".
8. Измените свойство Caption на строку "ОТВЕТ".
9. Листинг программы
Лабораторная работа №2
Тема: Программирование разветвляющихся алгоритмов
Цель: : Изучить операторы If, Select
Ход занятия:
1. Составить программу для вычисления выражения: (пример 1)
2. Структура диалогового окна Visual Basic
3. Текст программы:
4. Вычислить выражение: (Пример 2)
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 69 из 76
5. Текст программы:
Лабораторная работа № 3
Тема: Программирование циклических алгоритмов.
Цель: Изучить операторы цикла For, While, Until.
Ход работы :
1. Составить программу вычисления выражения (пример1)
2. Текст программы
3. Составить программу вычисления выражения: Пример 2
4. вместо For использовать Do While
5. Заменим цикл for i = 1 to N на цикл Do While
Лабораторная работа №4
Тема: Разработка простейших алгоритмов
Цель: Научиться составлять программы с использованием компонент TextBox и CommandButton.
Ход работы:
1. Составить программу – калькулятор:
2. Вид диалогового окна
3. Установка поля YS.Enable в False.
4. В программе предусмотреть случай деления на Х = 0
Лабораторная работа № 5
Тема: Использование подпрограмм – функций
Цель: Изучить структуру и правила обращения к подпрограммам-функциям.
Ход занятия
1. Составить программу вычисления выражения
2. Оформите диалоговое окно по аналогии с лабораторной работой
3. Заполните текст функции Z(x) по заданому алгоритму
4. Заполнить диалоговое окно:
5. Текст программы
6. Отработайте действия по кнопке ОТВЕТ для вычисления
7. Запустите программу на выполнению по F5.
Лабораторная работа №6
Тема: Использование подпрограмм-процедур
Цель: Изучить структуру и правила обращения к подпрограммам-процедурам
Ход работы:
1. Составить программу подсчёта
2. Оформить диалоговое окно:
3. Текст программы
4. Запишите текст процедуры PR
5. Заполнить диалоговое окно:
Лабораторная работа №7
Тема: Использование компоненты «Переключатель» Option Button
Цель: Научиться составлять программы с использованием переключателя OptionButton.
Ход работы
1. пункт меню Вставка-Модуль
2. диалоговое окно UserForm вместе с панелью элементов.
3. Создать диалоговое окно
4. Набрать текст процедуры:
5. текст процедуры CommandButton1_Click для кнопки «Ответ»:
6. Запустить программу на счёт.
Лабораторная работа № 8
Тема: Использование компоненты
“Флажок” CheckBox и компоненты “Поле со списком”
ComboBox.
Цель: Научиться составлять программы с использованием компонент CheckBox и ComboBox.
Ход работы
ПРИМЕР 1
1. Создать диалоговое окно
2. текст процедуры-события CheckBox1
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 70 из 76
3. запрограммировать компоненты Italic и Underline устанавливая в True или False соответственно
свойства XS.Font.Italic и XS.Font.Underline
4. Установить размер шрифта окна XS
5. Запустить программу на счет.
Пример 2:
1. Добавить в зону Шрифт компонент Combo Box (поле со списком) и подпись «Шрифт».
2. Перейти в меню Вид-Программа и для События Activate объекта User Form набрать текст программы
для заполнения списка в Combo Box 1:
3. текст установки типа шрифта в окно XS
4. Запустить программу на выполнение и проверить установку типа шрифта в окне XS
Лабораторная работа № 9
Тема: Использование одномерных массивов
Цель: Изучить использование одномерных массивов.
Ход работы:
1. Выбрать пункт меню Вставка-Модуль.
2. Сделать объявление массива Х:
3. Выбрать пункт меню Вставка-UserForm.
4. Выбрать пункт меню Вид-Программа. Для события Activate объекта UserForm набрать текст
заполнения массива Х табличными значениями функции
5. Создать диалоговое окно
6. набрать текст процедуры OptionButton1_Click:
Лабораторная работа №10Тема: Использование двумерных массивов.
Цель: Изучить использование двумерных массивов.
Ход работы:
1. Подготовить диалоговое окно:
2. Сделайте объявление двумерного массива Х
3. Алгоритм работы программы
4. выбор переключателя в группе "выбор алгоритма"
5. Заполнение двумерного массива Xmas.
6. Вид-Программа
7. текст события Change
8. Выполнение действий с двумерным массивом
9. Программа события Change переключается "max"
10. Текст события UserForm1_Activate для проведения вычислений в момент запуска программы на счет
Лабораторная работа №11
Тема: Использование компоненты “Поле со списком” ComboBox.
Цель: Научиться составлять программы с использованием компоненты ComboBox.
Ход работы
1. Подготовить диалоговое окно UserForm
2. Комбинированный список
3. Создаем массив
4. Текст события Click кнопки "Добавить":
5. Текст события Click кнопки "Удалить":
6. Текст события Click кнопки "Изменить":
7. Текст события Click объекта ComboBox1:
Лабораторная работа № 12,13
Тема: Использование списка ListBox
Цель: Научиться составлять программы с использованием ListBox
Ход работы:
1. Подготовить диалоговое окно:
2. Кнопка “Добавить”
3. Объявите массивы PLC
4. Набрать текст события UsrForm1.Activate для заполнения списка
5. создании формы UserForm
6. Набрать текст события ListBox1_Change
7. события Exit текстовых окон PL, CH, St
8. Запустите программу на счет и проверьте
Лабораторная работа № 14,15
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 71 из 76
Тема: Использование набора вкладок TabStrip
Цель: Научиться составлять программы с использованием набора вкладок TabStrip.
Ход работы :
1. Подготовить диалоговое окно:
2. Объявите массивы, где будут храниться начисления:
3. Набрать текст события Activate формы UserForm1
4. Установка события TabStrip1_ Change
5. Установка события ComboBox1_ Change
6. Установка события OKL_ Exit для запоминания оклада и пересчетов при снятии фокуса с объекта OKL
7. Установка события PRO_ Exit для запоминания % премии и пересчетов при снятии фокуса с объекта
PRO
8. Запустите программу на счет
4.
САМОСТОЯТЕЛЬНАЯ РАБОТА СТУДЕНТА
ЗАДАНИЯ НА СРСП
СРСП №1
Тема: Линейные алгоритмы
Цель: Изучить структуру программы, типы переменных, основные операции и приоритет их
выполнения.
Ход занятия:
Структура программы
Типы переменных
Способы представления чисел
Оператор присваивания
СРСП №2
Тема: Программирование разветвляющихся алгоритмов
Цель: : Изучить операторы If, Select
Ход занятия:
Оператор условного перехода If.
1-я основная форма записи оператора If:
2-я основная форма записи оператора If:
Оператор ветвления Select. Select Case i
СРСП № 3
Тема: Программирование циклических алгоритмов.
Цель: Изучить операторы цикла For, While, Until.
Ход работы :
Краткие теоретические сведения.
Оператор цикла For
Оператор цикла Do While
Формат оператора:
Логика работы:
Оператор цикла Do Until
Формат оператора:
Логика работы:
СРСП №4
Тема: Разработка простейших алгоритмов
Цель: Научиться составлять программы с использованием компонент TextBox и CommandButton.
Ход работы:
Дополнить калькулятор кнопками, определяющими цвет символов в XS и YS
Цвет символов в XS и YS
Свойство BackColor
Свойство ForeColor
СРСП № 5
Тема: Использование подпрограмм – функций
Цель: Изучить структуру и правила обращения к подпрограммам-функциям.
Ход работы:
Краткие теоретические сведения
Подпрограммы-функции
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 72 из 76
Правила обращения к подпрограммам-функциям
Текст подпрограммы-функции
1. Тип функции
2. Имя параметра
Тип параметра
Пример текста функции с двумя параметрами
СРСП №7
Тема: Использование компоненты «Переключатель» Option Button
Цель: Научиться составлять программы с использованием переключателя OptionButton.
Ход работы
1. Меню Вставка-Модуль
Диалоговое окно UserForm
2. Компоненты «Функция Cos»
СРСП № 9
Тема: Использование одномерных массивов
Цель: Изучить использование одномерных массивов.
Ход работы
1. Краткие теоретические сведения
2. Массив
3. Одномерный массив типа Single
4. Оператор Dim
5. Начальное и конечное значения индексов массива
СРСП №10
Тема: Использование двумерных массивов.
Цель: Изучить использование двумерных массивов.
Ход работы
1. Краткие теоретические сведения
2. Аналог двумерного массива является обычная матрица.
3. Оператор Dim
4. Элемент массива
СРСП №11
Тема: Использование компоненты “Поле со списком” ComboBox.
Цель: Научиться составлять программы с использованием компоненты ComboBox.
Ход работы
1. Логика работы программы
2. Комбинированный список
3. Свойства и процедуры объекта ComboBox1: ListCount, ListIndex, AddItem (текст), RemoveItem (номер),
Text, Click
СРСП № 12,13
Тема: Использование списка ListBox
Цель: Научиться составлять программы с использованием ListBox
Ход работы:
1. Компонент “Выключатель” ToggleButton
2. Объявление массива
СРСП № 14,15
Тема: Использование набора вкладок TabStrip
Цель: Научиться составлять программы с использованием набора вкладок TabStrip.
Ход работы
1. Компонент TextBox
2. Свойства ST.Enabled, PR.Enabled SUMM.Enabled, SUMMDol
ЗАДАНИЯ НА СРС
СРС №1
Тема: Линейные алгоритмы
Цель: Изучить структуру программы, типы переменных, основные операции и приоритет их
выполнения.
Индивидуальные задания
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
4  x 4 sin 2 x  e x
y
 x3
3
2
x  ln( x  4)
2
1.
Проверьте:
при Х=1.5 значение Y=6.932295
y 
2.
x 1  3 x
1
2
4
x
x

2
4
x3  4
Проверьте:
при Х=1.5 значение Y=-8.06649E-02
3.
x z

x  z  x z
2
3
4
y  ln( x  1)

e
(cos 2 z  cos 2 x)( x 3  z 3 ) z 2 x 3
Проверьте:
при Х=1.5 и Z=2.0 значение Y=1.008976
СРС №2
Тема: Программирование разветвляющихся алгоритмов
Цель: : Изучить операторы If, Select
Ход занятия:
Индивидуальное задание 1:
Составить программу вычисления:
 ex

 , если К  1, 5, 8

4x


ex

 2 x  cos x , если - 4  К  0


Y= cos 2 x, если К  9
 если 6  x  8.1


0 , в противном случае

 4
 tg x, если x  0

x 2
(lnx  e ) , если 0  x  6

1 , в противном случае
Индивидуальное задание 2:
Составить программу вычисления:
Страница 73 из 76
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 74 из 76
sin 2 kx, если k  2
 3
x2

 k 2 , если x  0
 tg x e



3
| x  1 |  kx, если - 4  x  0  если - 2  k  2

1, в противном случае




3
2
Y= tg x , если k  -5,-6,-8

ln( x 2  k 2 ) , если k  -9

k  x , в протикном случае





СРС № 3
Тема: Программирование циклических алгоритмов.
Цель: Изучить операторы цикла For, While, Until.
Индивидуальное задание 1:
Составить программу вычисления выражения:
y=
sin 2 x , если - 2  x  0
N 2
x  ex  i

, если 3  x  0

2
i

1
i

1

0 , в противном случае

В задании последовательно использовать циклы For, Do While, Do Until.
Индивидуальное задание 2:
 N ( x  z)i
, если x  0 и z  0

i
i 1

 N ( z  x ) 2i
, если x  0 и z  0

2
y   i 1 i  z
 N xi i
z , если x  0 и z  0


2
 i 1
x i

 z  x, в противном случае
Составить программу вычисления выражения:
В задании одновременно использовать циклы For, Do While, Do Until.
СРС № 5
Тема: Использование подпрограмм – функций
Цель: Изучить структуру и правила обращения к подпрограммам-функциям.
Составить программу вычисления выражения:
Составить программу вычисления выражения (пример 1)
1. Индивидуальное задание 2
2. Индивидуальное задание 3 (Открыть модуль. По аналогии с примером записать текст функции)
СРСП №6
Тема: Использование подпрограмм-процедур
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 75 из 76
Цель: Изучить структуру и правила обращения к подпрограммам-процедурам
Краткие теоретические сведения
2. Подпрограммы-процедуры
3. Обращение к процедуре
4. Подпрограмма-процедура имеет следующую структуру
5. Имя процедуры
6. Правила объявления параметров процедуры
СРС №6
Тема: Использование подпрограмм-процедур
Цель: Изучить структуру и правила обращения к подпрограммам-процедурам
Индивидуальное задание 1:
Составить программу нахождения количества простых чисел в пределах от заданных значений K и N.
Индивидуальное задание 2:
Составить программу нахождения количества чисел делящихся на F в пределах от заданных значений K и
N.
Индивидуальное задание 3:
1. Выйти в Excel
2. Выбрать пункт меню Макрос-Начать запись
3. В окне “Имя макроса” указать имя макроса Primer
4. Проделать над строками и столбцами таблицы Excel процедуры вставки и удаления строк и столбцов.
Например, удалить строки 3-5, удалить столбцы D,F, вставить строки 1-2, вставить столбцы A-D.
5. Закончить запись макроса.
6. Войти в Visual Basic.
7. Проанализировать текст процедуры Primer, находящийся в модуле.
8. Выйти из Visual Basic.
9. Запустить на выполнение макрос Primer:
Макрос-Макросы
В окне “Макрос” указать Primer и нажать кнопку “Выполнить”.
СРС №7
Тема: Использование компоненты «Переключатель» Option Button
Цель: Научиться составлять программы с использованием переключателя OptionButton.
Ход работы
Индивидуальное задание 1:
По аналогии с примером 2 запрограммировать выбор функций по индивидуальному заданию 1.
Индивидуальное задание 2:
По аналогии с примером 2 запрограммировать выбор функций по индивидуальному заданию 2.
СРС № 8
Тема: Использование компоненты
“Флажок” CheckBox и компоненты “Поле со списком”
ComboBox.
Цель: Научиться составлять программы с использованием компонент CheckBox и ComboBox.
Ход работы
Индивидуальное задание 1:
1. Запрограммировать размер шрифта так, чтобы он не оказался меньше 5 и больше 30.
2. В зависимости от размера шрифта автоматически изменять высоту окна XS.
Индивидуальное задание 2:
1. Добавить к имеющемуся списку в ComboBox1 ещё 4 типа шрифтов.
2. Установить по ComboBox1 тип шрифта в окно SS задания размера шрифта и в окно самого
ComboBox1.
СРС № 9
Тема: Использование одномерных массивов
Цель: Изучить использование одномерных массивов.
Ход работы
Индивидуальное задание 1:
Вместо функции x2 + sin (x) – ex оформить массив X для функции:
УМКД 042-14.2.07.1.20.8/03-2012
Ред. № 1 от 03.09.2012г.
Страница 76 из 76
(e–x + tg x)2 + ex
( |x3 + x*sin2(x)| + 1)x2
СРС №10 Тема: Использование
двумерных массивов.
Цель: Изучить использование двумерных массивов.
Индивидуальное задание 1:
Доработайте программу для переключателей "Функция 2" и "Функция 3"
Индивидуальное задание 2:
Доработайте программу для переключателей "сумма элементов", "min", "среднее арифметическое".
Индивидуальное задание 3:
Доработайте программу для переключателей "кол-во>0", "кол-во=0", "кол-во< 0".
СРС №11
Тема: Использование компоненты “Поле со списком” ComboBox.
Цель: Научиться составлять программы с использованием компоненты ComboBox.
Ход работы
Индивидуальное задание 1:
Дополнить программу оценками по предметам "Информатика", "Экономика", "История".
Индивидуальное задание 1:
Дополнить программу средней оценкой по всем предметам.
СРС № 12,13
Тема: Использование списка ListBox
Цель: Научиться составлять программы с использованием ListBox
Ход работы:
Индивидуальное задание 1:
По кнопке "Удалить" провести удаление страны из списка.
Для этого воспользуйтесь процедурой ListBox1.RemoveItem(i) удаления i-го эле- мента из списка.
Не забудьте проделать процедуру удаления из массивов PLC, CHC, STC. Для этого можете воспользоваться
лабораторной работой №11.
Индивидуальное задание 2:
По кнопке "Добавить" провести добавление страны в список. Добавляемая страна набирается в окне
"страна" ниже кнопки "Добавить".
Добавление страны в список осуществить путем предварительной фиксации выключателя “Добавить”. При
этом необходимо воспользоваться свойством ToggleButton1.Value, которое принимает значение True, если
выключатель зафиксирован, и False в противном случае. Проверку ToggleButton1.Value осуществить в
событии ToggleButton1.Click для добавления страны в список и событиях Exit компонент PL,CH,LT и ST
для исключения пересчетов при фиксированном положении выключателя ToggleButton.
Для справки приводим данные по некоторым странам:
страна
столица
численность чел.
Площадь тыс. кв. м
США
Вашингтон
229 000 000
9 400 000
Литва
Вильнюс
3 445 000
65 000
Украина
Киев
50 135 000
603 700
Франция
Париж
57 800 000
551 000
Англия
Лондон
56 000 000
224 000
СРС № 14,15
Тема: Использование набора вкладок TabStrip
Цель: Научиться составлять программы с использованием набора вкладок TabStrip.
Индивидуальное задание 1:
Доработать программу добавлением начислений за стаж. За стаж % берется от оклада. По умолчанию взять
% за стаж=30
Индивидуальное задание 1:
Доработать программу добавлением курса доллара для каждого месяца и пересчетом "Итого" в "Итого в $".
Download