5.4.2 Экранная форма и ее описание
Для компоновки экранной формы были использованы следующие элементы управления окна Toolbox:
– Элементы управления Data с именами Data1 и Data2, обеспечивающий доступ к Базе Данных;
– Не входящий в базовый набор элемент управления MsFlexGrid (гибкая сетка) с именами Grid1, Grid2, Grid3, служащая для непосредственного отображения записей таблиц VIP, PROD и справок.
– Команднаякнопка Command Button сименами Command1, Command2, Command3, Command4, Command5
Свойства элемента Data1:
Caption = Таблица VIP
Name = Data1
Connect = Access
RecordSource = VIP
RecordSetType=0 (изтаблицы)
DataBaseName=C:\base.mdb
Caption = Таблица PROD
Name = Data2
Connect = Access
RecordSource = PROD
RecordSetType=0 (изтаблицы)
DataBaseName=C:\base.mdb
Свойстваэлемента MSFlexGrid:
Name = Grid1
Data Source = Data1
Fixed Cols = 0
Fixed Rows = 1
Name = Grid2
Data Source = Data2
Fixed Cols = 0
Fixed Rows = 1
Name = Grid3
Data Source =
Fixed Cols = 0
Fixed Rows = 1
5.4.3 Программа формирования Итогового документа
PrivateSubCommand5_Click()
Dim I%, K%, Kz%, T%, H%, J%
grid3. Visible = True
Data1. Visible = False
Data2. Visible = False
Data1. Recordset. MoveFirst
Data2. Recordset. MoveFirst
grid3. Rows = 1: grid3. Cols = 5
ForI = 0 To 2 'Дадим названия полей из таблицы БД полям в гибкой сетке
grid3. TextMatrix (0, I) = Data2. Recordset. Fields(I).Name
Next I
grid3. TextMatrix (0, 3) = Data1. Recordset. Fields(1).Name
grid3. TextMatrix (0, 4) = «ROS»
For I = 1 To Data2. Recordset. RecordCount
If Data2. Recordset. Fields(2).Value = «Да» Then
If Data1. Recordset. Fields(1) = 1 Or Data1. Recordset. Fields(1) = 2 Or Data1. Recordset. Fields(1) = 3 Then
grid3. Rows = grid3. Rows + 1: Kz = grid3. Rows – 1
For L = 0 To 2
grid3. TextMatrix (Kz, L) = Data2. Recordset. Fields(L).Value
Next L
grid3. TextMatrix (Kz, 3) = Data1. Recordset. Fields(1).Value
grid3. TextMatrix (Kz, 4) = Abs (Data1. Recordset. Fields(6) – Data1. Recordset. Fields(2)) + Abs (Data1. Recordset. Fields(7) – Data1. Recordset. Fields(3)) + Abs (Data1. Recordset. Fields(8) – Data1. Recordset. Fields(4)) + Abs (Data1. Recordset. Fields(9) – Data1. Recordset. Fields(5))
End If
End If
Data1. Recordset. MoveNext
Data2. Recordset. MoveNext
Next I
grid3. Col = 4 'Выберем колонку для сортировки
grid3. Sort = 1 'Сортируем строчки по нисходящей
EndSub
5.4.4 Экранная форма с выходными результатами
6.Создание пользовательского меню
Меню – один из способов диалога пользователя с информационной системой. Оно представляет собой список Пунктов, из которого следует выбрать необходимый.
В системе проектирование VisualBasic 6.0 создание Меню осуществляется с помощью Редактора меню MenuEditor.
Разработка Пользовательского меню
Создана БД из двух таблиц VIP и PROD.
Создается двухуровневое меню. Верхний уровень – это строка меню, которую называются Головным Меню. Каждый пункт головного меню может включать подменю из одного или нескольких пунктов.
Меню Проекта будет иметь следующих вид:
Конструирование Пользовательского меню осуществляется в окне Редактора меню MenuEditor.
При создании меню была выполнена следующая последовательность действий:
1. Формирование меню Справка
В окно Название (Свойство Caption) ввести Справка
В окно имя (свойство name) ввести mnuSpravka
Нажатие Дальше – переход к следующей команде меню
Создание отступа (следующий пункт меню – пункт меню другого уровня)Свойству Caption присваивается значение Справка 1, а свойству Name – mnuSpravka1
Нажатие Next
Свойству Caption присваивается значение Справка 2, а свойству Name – mnuSpravka2
Далее меню формируется аналогично.
При завершении создания меню было произведено нажатие ОК и созданное меню появилось на экранной форме. Отображается верхний уровень меню – головное меню. У меню есть единственное событие Click. Для раскрытия любого пункта меню или запуска любого пункта при выполнении программы достаточно один раз щелкнуть мышкой по выбранном пункту.
Для создания реальных процедур в пунктах меню в режиме design осуществим двойной щелчок по соотвествующей кнопке. Двойной щелчок по кнопке меню Распечатка VIP вызовет на форме заготовку процедуры
Private Sub mnuSpravka1_Click()
….
End Sub
В заготовку включаем заранее разработанную и отлаженную процедуру. Такую операцию осуществляем для каждого пункта меню. Теперь оно готов для использования его в режиме выполнения всего проекта.
Созданное в окне редактора меню
Экранная форма с созданным пользовательским меню
Список использованной литературы
1. Michael Halvorson. Microsoft Visual Basic 6.0 Step by Step – Redmond, Washington, USA, 1998
2. С.В. Глушаков, А.С. Сурядный, «Программирование на Visual Basic 6.0». изд «Фолио». М. 2005.