
- •Объект Debug и его методы
- •Метод Print
- •Метод Assert
- •Доказательство правильности программ
- •Условная компиляция и отладка
- •Директива #const
- •#If … Then … #Else директива
- •Ошибки периода выполнения и их обработка
- •Модель управления ошибками в языке vba.
- •Оператор On Error
- •Оператор Resume
- •Объект Err
- •Метод Clear
- •Метод Raise
- •Класс и обработка ошибок
- •Обработчики ошибок и вложенные вызовы процедур
- •Структура обработчика ошибок
- •Функция CvErr
- •Оптимизация программ
- •Приемы оптимизации кода
- •Объявление переменных
- •Математические операции
- •Строковые операции
- •Проектирование интерфейса. Меню
- •Общие объекты Office 2000
- •Коллекция CommandBars
- •Свойства и методы коллекции CommandBars
- •Свойства и методы объекта CommandBar
- •Коллекция CommandBarControls и ее элементы
- •О роли интерфейса
- •Создание собственных и модификация встроенных меню
- •Немного терминологии
- •Возможности настройки и изменения системы меню
- •Создание собственного головного меню
- •Использование диалогового окна Настройка
- •Создание меню с помощью vba
- •Добавление выпадающих меню
- •Использование диалогового окна Настройка
- •Как добавить встроенное меню
- •Добавление выпадающего меню с помощью vba
- •Добавление подменю
- •Вставка и группировка команд
- •Добавление встроенной команды с помощью окна Настройка
- •Добавление собственной команды с помощью окна Настройка
- •Добавление команд с помощью vba
- •Пример построения документа с собственным меню
- •Группировка команд меню
- •Удаление команд меню
- •Удаление команды с помощью окна Настройка
- •Удаление команды с помощью vba
- •Как восстановить удаленные встроенные компоненты меню
- •Изменение меню во время работы программы
- •Вывод собственной панели меню
- •Динамическое изменение видимости команд меню
- •Управление доступом к командам меню
- •Переименование команды меню
- •Диалоговые окна и элементы управления
- •Общие сведения и применение
- •Встроенные диалоговые окна Коллекция Dialogs и объект Dialog
- •Вывод сообщений. Функция MsgBox
- •Окно ввода данных. Функция InputBox
- •Создание пользовательских диалоговых окон
- •Создание страниц и вкладок в диалоговых окнах
- •Добавление дополнительных элементов управления
- •Пример создания диалогового окна
- •Разработка процедур, обрабатывающих события диалогового окна и его устройств
- •Вызов собственного диалогового окна
- •Установка начальных значений свойств элементов управления
- •Использование Me в качестве имени текущего диалогового окна
- •Модификация управляющих элементов во время работы
- •Управление доступом к элементу
- •Перемещение фокуса на элемент управления
- •Изменение размеров диалогового окна
- •Проверка корректности данных
- •Обмен данными с диалоговым окном
- •Закрытие диалогового окна
- •Объект UserForm (диалоговое окно), коллекция UserForms (диалоговые окна)
- •Коллекция Controls
- •Объекты - элементы управления Перечень основных элементов управления
- •Общие свойства элементов управления Объект-родитель
- •Имя объекта
- •Значение объекта
- •Расположение объекта
- •Параметры внешнего вида объекта
- •Свойства поведения объекта
- •Другие свойства
- •CheckBox - флажок (кнопка выбора)
- •ComboBox - комбинированный список
- •CommandButton - командная кнопка
- •Frame - рамка (группы)
- •Image - изображение
- •Label - метка (надпись, статический текст)
- •ListBox - список
- •MultiPage - набор страниц
- •OptionButton - кнопка-переключатель
- •ScrollBar - полоса прокрутки
- •SpinButton - счетчик
- •TabStrip - полоса вкладок
- •TextBox - поле ввода (окно редактирования)
- •ToggleButton - выключатель
- •Объект DataObject
- •Перемещение объектов. Как реализовать технику DragAndDrop
- •События Событие AddControl (добавился элемент)
- •Событие AfterUpdate (После модификации)
- •Событие BeforeDragOver (Перед завершением перетаскивания)
- •Событие BeforeDropOrPaste (Перед опусканием или вставкой)
- •Событие BeforeUpdate (Перед модификацией)
- •Событие Change (Изменение)
- •Событие Click (Щелчок)
- •Событие DblClick (Двойной щелчок)
- •Событие DropButtonClick (Щелчок кнопки списка)
- •События Enter, Exit (Вход, Выход)
- •Событие Error (Ошибка)
- •События KeyDown, KeyUp (Клавиша нажата, Клавиша отпущена)
- •Событие KeyPress (Клавиша нажата)
- •Событие Layout (Расположение)
- •События MouseDown, MouseUp (Мышь нажата, Мышь отпущена)
- •Событие MouseMove (Мышь движется)
- •Событие RemoveControl (Удаление элемента)
- •Событие Scroll (Прокрутка)
- •События SpinDown (Уменьшить счетчик), SpinUp (Увеличить счетчик)
- •Событие Zoom (Расширение)
- •Методы Метод Add (Добавить)
- •Метод AddItem (Добавить элемент)
- •Метод Clear (Очистить)
- •Метод Copy (Копировать)
- •Метод Cut (Вырезать)
- •Метод DropDown (Вывести список)
- •Метод Move (Сдвинуть)
- •Метод Paste (Вставить)
- •Реализация операций Cut, Copy, Paste в диалоговых окнах
- •Метод RedoAction (Повторить действие)
- •Метод Remove (Удалить)
- •Метод RemoveItem (Удалить элемент)
- •Метод Repaint (Перерисовать)
- •Метод Scroll (Прокрутить)
- •Метод SetDefaultTabOrder (Установить стандартный порядок обхода)
- •Метод SetFocus (Установить фокус)
- •Метод UndoAction (Отменить действие)
- •Реализация операций Undo и Redo в диалоговых окнах
- •Метод zOrder (z-упорядочить)
- •Основные виды файлов в Office 2000
- •Открытие и создание файлов
- •Закрытие файлов
- •Запись в файлы последовательного доступа
- •Чтение файлов последовательного доступа
- •Ввод-вывод для файлов произвольного доступа и бинарных файлов
- •Работа с данными переменной длины
- •Один пример работы с Binary файлом
Создание страниц и вкладок в диалоговых окнах
В одном диалоговом окне можно разместить несколько страниц и вкладок со своими управляющими элементами. Страницы и вкладки стали непременными элементами интерфейса систем, работающих с Windows. Отметим, что названия этих элементов в Office 2000 отличаются от принятых, например, в Windows 95: элемент MultiPage (набор страниц) позволяет создавать страницы с разными элементами управления (традиционно они назывались вкладками), а новый элемент TabStrip (полоса вкладок) создает "вкладки" с одинаковыми наборами элементов управления. Чтобы создать новый набор страниц, нужно перетащить на форму элемент MultiPage. Вначале будут созданы две страницы, которым можно дать нужные заголовки, сделав их значениями свойства Caption в списке свойств. На следующем рисунке эти страницы получили имена "Ссуды" и "Ренты".
Рис. 12.9. Создание страниц
Для того, чтобы добавить следующую страницу, щелкните правой кнопкой мыши правее имени последней страницы и в появившемся контекстном меню выберите команду Создать страницу (New Page). Это меню позволяет также переименовывать, перемещать и удалять страницы. Повторив операцию создания страницы несколько раз, можно разместить в окне необходимое число страниц. Затем на каждую из них нужно перетащить элементы управления.
Аналогично создаются вкладки элементом TabStrip. Отличие в том, что каждый помещаемый на одну вкладку элемент управления одновременно попадает на все вкладки набора.
Добавление дополнительных элементов управления
На панели элементов находятся пиктограммы не всех элементов управления, доступных в Office 2000. Доступ к дополнительным элементам управления Вы получите, щелкнув правой кнопкой панель элементов и выбрав в появившемся контекстном меню команду Дополнительные элементы (Additional Controls). На экране появится одноименное окно со списком доступных элементов управления (Available Controls).
Рис. 12.10. Окно Дополнительные элементы
В этом списке отмечены элементы, находящиеся в данный момент на панели инструментов. Отметив в списке нужные дополнительные элементы, и выйдя из этого окна, Вы увидите их на панели инструментов и сможете использовать при создании своих диалоговых окон.
Пример создания диалогового окна
Давайте создадим диалоговое окно "Цветная форма", в котором будут расположены изображение (Image), поле ввода (TextBox) и командная кнопка (CommandButton).
-
В меню Вставка выберите команду UserForm для создания нового диалогового окна.
-
Щелкнув правой кнопкой появившееся окно UserForm1, выберите в контекстном меню команду Свойства. Введите новое имя ColorForm1 в правом столбце строки со свойством (Name), в качестве значения свойства Caption введите заголовок окна: "Цветная форма". Щелкните правый столбец в строке со свойством BackColor (Цвет фона), затем - появившийся справа значок списка. В таблице появившегося окна щелчком выберите понравившийся цвет. Окно "перекрасится". Закройте окно свойств.
-
Перетащите с панели инструментов на окно элемент Image (изображение). Щелкните его правой кнопкой и снова выберите команду Свойства. В появившемся окне со списком свойств отыщите строку со свойством Picture (Рисунок). Чтобы перейти к поиску нужного файла с картинкой, щелкните кнопку с многоточием (…) справа в этой строке. В диалоговом окне Загрузка рисунка (Load Picture) выберите файл с симпатичной картинкой и щелкните кнопку OK.
-
Перетащите на диалоговое окно элемент управления поле ввода (TextBox). Как и в п. 3, щелкнув его правой кнопкой, вызовите окно Свойства. Введите в качестве значения свойства Value название выбранной вами картинки - оно появится в окне редактора. Затем выберите свойство Font Справа появится кнопка (…). Щелкните ее и в появившемся списке шрифтов выберите шрифт для редактора.
-
Перетащите на диалоговое окно командную кнопку (CommandButton). Вызовите окно Свойства для этой кнопки, и измените в нем значение свойства Caption (Заголовок) на "Нажми меня" - текст станет именем кнопки. Измените имя кнопки (Name) на cmdClickMe. По этому имени к кнопке будут обращаться процедуры и методы в программе. Введите справку "Командная кнопка" как значение свойства ControlTipText - надпись будет появляться на экране под кнопкой всякий раз, когда на ней окажется указатель. Установите для кнопки ключ быстрого выбора: найдите в списке свойств строку со свойством Accelerator (Ускоритель) и введите в поле справа букву "Н" - в имени кнопки первый символ "Н" будет подчеркнут и нажатие клавиш Alt+Н будет эквивалентно выбору кнопки. Установите также подходящий шрифт с помощью свойства Font, как и для поля ввода.
-
В меню Запуск выберите команду "Запуск подпрограммы/UserForm". На экране приложения появится спроектированное диалоговое окно.
Рис. 12.11. Цветная форма
-
Щелкните кнопку Close на заголовке диалогового окна, чтобы выйти из него.