
- •Санкт-Петербургский
- •Оглавление
- •5. Формы 25
- •3. Таблицы
- •3.1. Создание структуры таблицы
- •3.2. Загрузка таблицы данными
- •3.3. Модификация структуры таблицы
- •3.4. Работа с макетом таблицы
- •3.5. Схема данных
- •3.6. Печать таблицы
- •4. Запросы
- •4.1.Типы запросов
- •4.2.Создание qbe-запроса
- •4.3. Заполнение бланка запроса
- •4.4. Работа с построителем выражений
- •4.5. Редактирование запроса
- •4.6. Печать динамического набора данных
- •4.7. Примеры запросов
- •4.7.1. Запрос на выборку данных
- •4.7.2.Запрос с параметром (параметрический запрос)
- •4.7.3. Запрос на создание таблицы
- •4.7.4. Запросы на изменение данных
- •4.7.4.1. На добавление записей
- •Insert into Детали (номерд, имяд, цена )
- •Insert into Детали (номерд, имяд, цена )
- •Values ( 15, “ролик”,150);
- •Insert into Новая ( [номер поставщика], [номер детали], [имя детали], [город] )
- •4.7.4.2. Запрос на удаление записей
- •4.7.4.3. Запрос на обновление (корректировку) данных
- •4.7.5. Группирование данных в запросе
- •4.7.6. Перекрестный запрос
- •4.7.7. Подчиненные (вложенные) запросы
- •4.8.Фильтрация данных
- •5. Формы
- •5.1. Создание однотабличной формы
- •5.2. Редактирование формы
- •5.3. Часто используемые свойства формы
- •5.4. Элементы управления и их свойства
- •6. Отчеты
- •6.1. Создание отчета
- •6.2. Работа с отчетом в режиме конструктора
- •6.3. Сортировка и группировка данных
- •7. Макросы
- •7.1. Создание макросов
- •7.2. Краткая характеристика макрокоманд
- •7.3. Групповые макросы
- •7.4. Реализация ветвлений в макросах
- •7.4.1. Примеры макросов с односторонним ветвлением
- •7.4.2. Пример макроса с двусторонним ветвлением
- •7.5. Реализация циклов в макросах
- •8. Основы создания пользовательского интерфейса
- •8. 1. Взаимодействие форм
- •Интерфейс.Открыть просмотр
- •Интерфейс.Открыть редактирование
- •Интерфейс.Закрыть просмотр
- •8. 2. Создание кнопочных меню с помощью диспетчера кнопочных форм
- •8. 3. Создание пользовательских меню
- •8. 3.1. Создание пользовательских меню с помощью макросов
- •8. 3.2. Создание пользовательских меню с помощью своей панели инструментов
8. 3.2. Создание пользовательских меню с помощью своей панели инструментов
Созданное таким способом меню не заменит линейку системного меню, а будет существовать на отдельной панели (пользовательской панели инструментов).
Рассмотрим пример.
Пример 32. Пусть требуется создать пользовательскую панель инструментов с таким же меню, как в примере 31.
Для этого нужно выполнить следующую последовательность действий:
Открыть окно для создания пользовательской ПИ командой системного меню: Вид/Панели инструментов/Настройка
1спо кнопкеСоздать. Откроется окно создания ПИ:
Переименовать ПИ, назвав ее Моя панель. По кнопкеОКзакроется текущее окно и появится созданная ПИ. Передвинуть, схватив мышью за заголовок, ПИ так, чтобы она располагалась справа от окна БД. Окно настройки осталось открытым.
В окне настройки открыть вкладку Командыи в областиКатегориивыделить командуНовое меню. Получим:
Не закрывая окна настройки, захватим мышью Новое менюиз областиКомандыокнаНастройка, протащим и бросим на нашу ПИ. Получим:
Повторим это действие еще раз так, чтобы наша панель приняла вид:
На открытьк.з. меню и набрать с помощью клавиатуры Имя:Форма. Аналогично на втором новом меню дать имяТаблица. Получим:
Таким образом мы создали пункты горизонтального меню (см. рисунок меню в начале примера). Теперь нужно создать вертикальные всплывающие пункты меню.
1спо кнопке раскрывающего меню на пунктеФормы. Получим:
Перетащим Новое меню, как показано ниже
На новом меню откроем к.з.меню и изменим Имя наЗакрыть форму. Получим:
Действуя аналогично для таблиц, в результате получим:
и
Теперь каждый пункт меню нужно связать с определенным действием (макросом).
Создадим групповой макрос по имени Открыть таблицы, который будет иметь вид:
Имя макроса |
Макрокоманда |
Примечание |
Поставщики |
ОткрытьТаблицу (Имя таблицы: Поставщики) |
|
Поставки |
ОткрытьТаблицу (Имя таблицы:Поставки) |
|
Создадим групповой макрос по имени Закрыть таблицы, который будет иметь вид:
Имя макроса |
Макрокоманда |
Примечание |
Поставщики |
Закрыть (Тип объекта: Таблица Имя объекта: Поставщики) |
|
Поставки |
Закрыть (Тип объекта: Таблица Имя объекта: Поставки) |
|
Создадим макрос по имени Закрыть форму:
Макрокоманда |
Примечание |
Закрыть (Тип объекта: Форма Имя объекта: Детали) |
|
Теперь свяжем созданные макросы с пунктами меню на нашей панели. Для этого при открытом окне настройки ПИизк.з.меню на пунктеФормынашей панели откроем окно свойств и в качестве действия выберем из списка макросЗакрыть форму:
Аналогично выберем действия для остальных пунктов меню нашей панели.
Теперь сделаем так, чтобы Моя панельпоявлялась при открытии формыДеталии исчезала при закрытии формыДетали. Для этого создадим макросы по имениПоказать мою панель, который будет таким:
Макрокоманда |
Примечание |
ПанельИнструментов (Панель инструментов: Моя панель, Показать: Да) |
|
и макрос по имени Закрыть мою панель:
Макрокоманда |
Примечание |
ПанельИнструментов (Панель инструментов: Моя панель, Показать: Нет) |
|
Связать событие Открытиедля формыДеталис макросомПоказать мою панель, а свойствоЗакрытие– с макросомЗакрыть мою панель.
Проверить работоспособность созданного меню.