
- •Часть 2
- •Введение
- •Тема 1. Определение свойств объектов формы
- •Вкладка Layout
- •Вкладка Other
- •Вкладка Data
- •Пример разработки формы и описания свойств ее объектов
- •Использование Построителя таблиц для размещения в форме объектов Grid
- •Тема 2. Создание многостраничных форм
- •Пример разработки и проектирования многостраничной формы по работе флота на освоении перевозок грузов
- •Описание объектов формы «Работа флота», размещенных на первой вкладке «Разработка схемы работы флота», их свойств и методов обработки этих объектов
- •Описание объектов второй вкладки «Оценка освоения объемов перевозок», их свойств и методов обработки этих объектов
- •Тема 3. Создание перекрестных таблиц и диаграмм
- •Создание одномерных перекрестных таблиц
- •Этапы создания одномерной перекрестной таблицы в режиме Конструктора запросов
- •Создание двумерных перекрестных таблиц с помощью Мастера запросов
- •Создание диаграмм
- •Этапы создания двумерных диаграмм на основе одномерных перекрестных таблиц
- •Этапы создания трехмерных диаграмм на основе двумерных перекрестных таблиц
- •Тема 4. Создание и использование справочных окон диалога при работе с формами
- •Messagebox (текст_сообщения [,тип_диалогового_окна [,заголовок]])
- •Тема 5. Создание отчетов в свободной форме
- •Способы создания отчетов
- •Этапы создания отчетов в свободной форме с помощью Конструктора отчетов
- •Создание многоколоночного отчета
- •Тема 6. Создание пользовательского меню
- •Создание линейки главного меню
- •Создание «горячих» клавиш (hot key)
- •Разделители элементов меню
- •Определение клавиш быстрого вызова пунктов меню
- •Пояснительное сообщение для пункта меню
- •Определение общих параметров меню
- •Генерация и запуск созданного меню на выполнение
- •Редактирование файла меню в режиме конструктора
- •Создание контекстного (всплывающего) меню
- •Описание пунктов меню
- •1. Редактирование:
- •2. Обработка информации
- •3. Печать данных
- •4. Выход
- •Тема 7. Создание проекта приложения. Управление проектом и создание приложения
- •Определение параметров проекта
- •Построение приложения
- •Тема 8. Создание web-страниц для таблиц
- •Литература
- •Оглавление
- •Обработка данных в среде субд Visual foxpro
- •Часть 2
Описание объектов формы «Работа флота», размещенных на первой вкладке «Разработка схемы работы флота», их свойств и методов обработки этих объектов
Таблица 6
Свойства и методы обработки объектов первой вкладки
№ объекта |
Тип объекта |
Название объекта в форме |
Свойства |
|
Название |
Начальное значение |
|||
00 |
Форма |
Form1 |
Caption |
Работа флота |
WindowState |
0 - Normal |
|||
Событие – Load Процедура (определение начальных значений полей) public nz, spec,z sele перевозки repl all освоено with 0,остаток with 0 go top sele суда repl all номер_дог with 0,число_отпр with 0, объем_пер with 0 go top |
||||
01 |
Контейнер вкладок 1 |
PageFrame1 |
PageCount |
2 |
02 |
Вкладка 1 |
Page1 |
Caption |
Разработка схемы работы флота |
BackColor |
255,255,0 (yellow) |
|||
Событие – Activate Процедура (выбор области с таблицей Суда) sele суда thisform.refresh |
||||
1 |
Надпись |
Label1 |
Caption |
Судно |
BackStyle |
0 -Transparent |
|||
2 |
Поле ввода |
Text1 |
ControlSource |
суда. судно |
BackStyle |
0 -Transparent |
|||
3 |
Надпись |
Label2 |
Caption |
№ проекта |
BackStyle |
0 -Transparent |
|||
4 |
Поле ввода |
Text2 |
ControlSource |
суда. n_проекта |
BackStyle |
0 -Transparent |
|||
5 |
Надпись |
Label3 |
Caption |
Класс Регистра |
BackStyle |
0 -Transparent |
|||
6 |
Переключатель |
OptionGroup1 |
ButtonCount |
3 |
ControlSource |
суда. класс_рег |
|||
Опции |
Option1 |
Caption |
М-СП |
|
Option2 |
Caption |
3-СП |
||
Option3 |
Caption |
О |
||
7 |
Надпись |
Label4 |
Caption |
Специализация по грузу |
BackStyle |
0 -Transparent |
Продолжение табл. 6
№ объекта |
Тип объекта |
Название объекта в форме |
Свойства |
|
Название |
Начальное значение |
|||
8 |
Переключатель |
OptionGroup2 |
ButtonCount |
2 |
ControlSource |
суда.специализация |
|||
Опции |
Option1 |
Caption |
темные |
|
Option2 |
Caption |
светлые |
||
9 |
Кнопка |
Command1 |
Caption |
Расчет и корректировка нормативов |
Событие – Click Процедура (корректировка и расчет продолжительности кругового рейса) sele круговые_рейсы repl т_кр with 0 all repl т_кр with (время_погр+время_выгр+хг+хп) all brow sele суда |
||||
10 |
Кнопка |
Command2 |
Caption |
Просмотр грузопотоков, соответствующих специализации судна |
Событие – Click Процедура sele Суда * Запоминание в переменной spec специализации очередного судна: spec=thisform.pageframe1.page1.optiongroup2.value sele перевозки go top set filt to set filt to груз=spec
w .grid1.visible=.T. .combo1.visible=.T. .label5.visible=.T. endwith sele Суда |
||||
11 |
Таблица |
Grid1 |
RecordSource |
Перевозки |
RecordSourceType |
1 - Alias |
|||
ColumnCount |
6 |
|||
Visible |
.F. - False |
|||
12 |
Надпись |
Label5 |
Caption |
Выбор № договора |
BackStyle |
0 -Transparent |
|||
Visible |
.F. - False |
|||
13 |
Раскрывающийся список |
Combo1 |
RowSource |
Договора.номер_дог |
RowSourceType |
6 - Fields |
|||
Visible |
.F. – False |
Продолжение табл. 6
№ объекта |
Тип объекта |
Название объекта в форме |
Свойства |
|
Название |
Начальное значение |
|||
Событие – GotFocus Процедура1 sele суда go nz |
||||
Событие – LostFocus Процедура2 sele суда if договора.номер_дог=99999 && судно освобождается от всех обязательств repl номер_дог with 0, число_отпр with 0, объем_пер with 0 else repl номер_дог with договора.номер_дог endif |
||||
14 |
Кнопка |
Command3 |
Caption |
Расчет числа отправлений на линии |
Событие – Click Процедура sele Перевозки set order to tag договор sele суда nz=recno() && запоминание в переменной nz № текущей записи из таблицы Суда if номер_дог<99999 pr=n_проекта d=номер_дог sele Перевозки seek d
p pn=п_назн запоминание в переменных реквизитов g=груз выбранного грузопотока p=период sele круговые_рейсы t=0 locate for N_проекта=pr.and.п_отпр=po.and.п_назн=pn.and.груз=g if found() t=т_кр else wait window "Нормы не определены. Откорректируйте круговые рейсы" timeout 3 endif sele суда go nz if t>0 repl число_отпр with round(p*24/t,0) repl объем_пер with qe*число_отпр/1000 endif endif |
Продолжение табл. 6
№ объекта |
Тип объекта |
Название объекта в форме |
Свойства |
|
Название |
Начальное значение |
|||
15 |
Кнопка |
Command4 |
Caption |
Просмотр назначений судов |
Событие – Click Процедура sele суда brow |
||||
16 |
Набор кнопок |
Commandgroup1 |
ButtonCount |
5 |
Command1 |
Picture |
Wztop.bmp |
||
Command2 |
Picture |
Wznext.bmp |
||
Command3 |
Picture |
Wzback.bmp |
||
Command4 |
Picture |
Wzend.bmp |
||
Command5 |
Picture |
Wzclose.bmp |
||
Событие – Click Процедура 1 (перемещение в начало таблицы «Суда») With thisform.pageframe1.page1 . .combo1.visible=.f. .label5.visible=.f. endwith sele суда go top nz=recno() thisform.refresh |
||||
Событие – Click Процедура 2 (перемещение на следующую запись таблицы «Суда») With thisform.pageframe1.page1 .grid1.visible=.f. .combo1.visible=.f. .label5.visible=.f. endwith sele суда go nz if !eof() skip else go bottom endif nz=recno() thisform.refresh() |
Продолжение табл. 6
№ объекта |
Тип объекта |
Название объекта в форме |
Свойства |
|
Название |
Начальное значение |
|||
Событие – Click
Процедура 3 (перемещение на предыдущую запись таблицы «Суда») With thisform.pageframe1.page1 .grid1.visible=.f. .combo1.visible=.f. .label5.visible=.f. endwith sele суда go nz if !bof() skip-1 else go top endif nz=recno() thisform.refresh() |
||||
Событие – Click
Процедура 4 (перемещение в конец таблицы «Суда») With thisform.pageframe1.page1 .grid1.visible=.f. .combo1.visible=.f. .label5.visible=.f. endwith sele суда go bottom nz=recno() thisform.refresh() |
||||
Событие – Click
Процедура 5 (окончание работы с формой) With thisform.pageframe1.page1 .grid1.visible=.f. .combo1.visible=.f. .label5.visible=.f. endwith thisform.release |
Вид окна вкладки «Оценка освоения объемов перевозок» в режиме конструктора приведен на рис. 9.
Р
8 в режиме конструктора |