
- •Объект 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 файлом
Событие DblClick (Двойной щелчок)
Возникает, когда пользователь, установив указатель на объект, производит двойной щелчок. Для элементов, возбуждающих и событие Click, к событию DblClick приводит следующая цепь событий:
-
MouseDown;
-
MouseUp;
-
Click;
-
DblClick.
А для элементов, не поддерживающих Click (например, поля ввода), из этой последовательности нужно удалить Click.
Если возвращенное значение свойства Cancel равно True, то при двойном щелчке пользователя второй щелчок игнорируется. Это позволяет, например, сделать так, что одинарный и двойной щелчки имеют одинаковое действие.
Заголовок процедуры обработки события Click для набора страниц и полосы вкладок имеет вид:
Private Sub объект_DblClick (index As Long, ByVal Cancel As MSForms. ReturnBoolean)
а для остальных элементов:
Private Sub объект_DblClick (ByVal Cancel As MSForms. ReturnBoolean)
Здесь объект - имя объекта, которому принадлежит процедура, index - индекс страницы, на которой произошел щелчок, а Cancel - обязательный статус обработки события, его значение. False (по умолчанию) означает, что оно будет обрабатываться элементом, True - что событие будет обрабатываться приложением.
Событие DropButtonClick (Щелчок кнопки списка)
Возникает всякий раз при появлении и исчезновении выпадающего списка. Причиной появления этого события может быть исполняемая программа (вызов метода DropDown) или нажатие пользователем клавиши F4. Когда список исчезает с экрана, событие DropButtonClick инициируется системой.
Заголовок процедуры обработки события имеет вид:
Private Sub объект_DropButtonClick ()
События Enter, Exit (Вход, Выход)
Событие Enter возникает перед тем, как фокус переместится на данный элемент из другого элемента диалогового окна. Exit возникает перед тем, как фокус переместится с данного элемента на другой.
Заголовки процедур обработки этих событий имеют вид:
Private Sub объект_Enter ()
Private Sub объект_Exit (ByVal Cancel As MSForms. ReturnBoolean)
Здесь объект - имя объекта, которому принадлежит процедура, а Cancel - обязательный статус обработки события, его значение False показывает, что оно будет обрабатываться элементом (устанавливается по умолчанию), True - что событие будет обрабатываться приложением, при этом фокус остается на текущем элементе. Таким образом, чтобы оставить в фокусе текущий элемент в процедуре объект_Exit, задайте True параметру Cancel.
Событие Enter естественно использовать для модификации данных в элементе в тот момент, когда он помещается в фокус, в зависимости от состояний и значений других элементов диалогового окна или от данных основного документа приложения. Exit позволяет проверять при выходе из поля ввода оставленные пользователем данные и сообщать об обнаруженных в них ошибках, а при выходе из списка изменять значения других элементов в зависимости от сделанного пользователем выбора.
Событие Error (Ошибка)
Возникает, когда элемент управления, обнаружив ошибку (не обрабатываемую данным приложением Office 2000), не может возвратить информацию о ней в вызывающую программу.
Процедура обработки события Error определяет действия системы при возникновении ошибки. Заголовок этой процедуры для набора страниц и полосы вкладок имеет вид:
Private Sub объект_Error (index As Long, ByVal Number As Integer,
ByVal Description As MSForms. ReturnString, ByVal SCode As SCode,
ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext
As Long, ByVal CancelDisplay As MSForms. ReturnBoolean) ;
для других элементов:
Private Sub объект_Error (ByVal Number As Integer, ByVal Description As MSForms.
ReturnString, ByVal SCode As SCode, ByVal Source As String, ByVal HelpFile
As String, ByVal HelpContext As Long, ByVal CancelDisplay As MSForms.
ReturnBoolean).
Здесь параметры имеют следующий смысл:
-
объект - имя объекта, которому принадлежит процедура,
-
index - индекс страницы, на которой произошла ошибка,
-
Number - уникальный номер, используемый элементом для идентификации ошибки,
-
Description - текст с описанием ошибки,
-
SCode - задает код OLE статуса для данной ошибки (нижние 16 битов задают то же число, что и Number),
-
Source - строка, идентифицирующая элемент управления, который инициирует ошибку,
-
HelpFile - полное имя пути к справочному файлу, содержащему описание ошибки,
-
HelpContext - идентификатор контекста файла справки с темой, описывающей ошибку,
-
CancelDisplay - булев параметр, определяющий выводить ли описание ошибки в окне сообщения.