Microsoft Press
Visual Basic 6.0

Microsoft Press Visual Basic 6.0. Серия "Мастер". - СПб.: BHV-Санкт-Петербург, 2003 - 992 с.: ил.
Язык программирования Visual Basic - мощный инструмент разработки приложений для 32-разрядных систем Windows 95 и Windows NT. В книге рассматриваются как фундаментальные понятия и темы: от установки продукта на компьютер пользователя и описания интегрированной среды разработки до изложения основ техники программирования на Visual Basic, так и сложные вопросы, адресованные профессиональным программистам: создание интерфейса пользователя, применение стандартных элементов управления, в том числе и для работы с базами данных, программирование компонентов ActiveX, описание технологии OLE drag-and-drop, объектная модель FSO, функции работы с файлами, отладка и оптимизация программ, локализация и распространение готовых приложений. Для широкого круга программистов.

Содержание

Введение

Часть I. Основы Visual Basic

Глава 1. Установка Visual Basic

  • Добро пожаловать в систему программирования Visual Basic
    • Версии Visual Basic
  • Установка Visual Basic
    • До запуска Setup
      • Системные и технические требования
      • Прочитайте файл Readme
    • Настройка Visual Basic
      • Добавление или удаление компонентов Visual Basic
      • Запуск Visual Basic
  • Получение подсказки во время работы
    • Справочная система
    • Контекстно-зависимая справка
    • Выполнение примеров из справочной системы
    • On-line связи Visual Basic
      • Web-сайт фирмы Microsoft
    • Службы поддержки продуктов фирмы Microsoft
      • Сообщите нам, что вы думаете

Глава 2. Разработка приложений в Visual Basic

  • Образец приложения: Firstapp.vbp
  • Основы Visual Basic
    • Как работает Windows: окна, события и сообщения
    • Событийная модель
    • Интерактивная разработка
  • Интегрированная среда разработки
    • Запуск Visual Basic IDE
    • Элементы IDE
      • Строка меню
      • Контекстное меню
      • Панели инструментов
      • Панель элементов управления
      • Окно проводника проекта
      • Окно Properties
      • Object Browser
      • Дизайнер форм
      • Окно редактора кода
      • Окно компоновки форм
      • Окна Immediate, Locals и Watch
    • Опции среды разработки
      • Интерфейсы SDI или MDI
      • Фиксирование окон
  • Первое приложение на Visual Basic
    • Hello, Visual Basic
      • Создание интерфейса
      • Установка свойств
      • Написание кода
      • Выполнение приложения
    • Образец приложения Firstapp
      • Создание проекта
      • Установка значений свойств
      • Написание кода обработки событий
      • Сохранение проекта
      • Улучшение приложения

Глава 3. Формы, элементы управления и меню

  • Образец приложения: Controls.vbp
  • Свойства, методы и события
  • Разработка формы
    • Установка свойств формы
      • События и методы формы
  • Кнопки как основа выполнения действий
      • Кнопки управления
      • Пример Test Buttons
  • Элементы управления для отображения и ввода текста
    • Метки
      • Подгонка размеров метки к ее содержимому
    • Текстовые поля
      • Многострочные текстовые окна и перенос слов
      • Работа с текстом в текстовом поле
  • Элементы управления, организующие выбор пользователя
    • Флажки
      • Приложение Check Box
      • События в приложении Check Box
    • Группирование возможностей с помощью переключателей
      • Создание групп переключателей
      • Контейнеры для элементов управления
      • Выбор переключателей
      • Приложение Options
      • События в приложении Options
    • Комбинированные окна и списки
    • Полосы прокрутки как устройства ввода
  • Графические элементы управления. Отображение картинок и графики
    • Графическое окно
      • Графическое окно в качестве контейнера
      • Другие применения элемента управления Picture
    • "Облегченные" графические элементы управления
      • Элементы управления Image и Picture
      • Создание кнопок
      • Элементы управления Shape и Line
    • Приложение Images
      • События в приложении Images
    • Другие элементы управления
      • Элементы управления доступа к данным
      • Файловые элементы управления
      • Остальные элементы управления
    • Что такое фокус?
      • Событие Validate элементов управления
      • Элементы управления, которые могут получить фокус
    • Установка последовательности перехода
      • Удаление элемента управления из последовательности перехода
    • Основы меню
      • Контекстные меню
      • Редактор меню
  • Подсказки пользователю с помощью диалога

Глава 4. Управление проектами

  • Работа с проектами
    • Project Explorer
    • Файл проекта
  • Структура проекта Visual Basic
    • Модули форм
    • Модули классов
    • Стандартные модули
    • Файлы ресурсов
    • Документы ActiveX
    • Модули User Control и Property Page
    • Компоненты
      • Элементы управления ActiveX
      • Вставляемые объекты
    • Стандартные элементы управления
  • Создание, открытие и сохранение проектов
    • Работа с несколькими проектами
  • Добавление, удаление и сохранение файлов
    • Слияние текста
  • Добавление элементов управления в проект
    • Добавление элементов управления ActiveX в проект
    • Удаление элементов управления из проекта
    • Использование объектов других приложений
    • Файлы ресурсов и локализация
  • Создание и запуск выполняемого файла
    • Условная компиляция
  • Установка параметров проекта
  • Использование мастеров и дополнений
    • Диспетчер дополнений
    • Использование мастеров
  • Глава 5. Основы программирования
    • Содержание
    • Образец приложения: Vcr.vbp
  • Структура приложения Visual Basic
    • Как работает событийное приложение
  • До начала кодирования
  • Техника написания кода
    • Модули кода
      • Модули формы
      • Стандартные модули
      • Модули классов
    • Редактор кода
      • Автоматизация написания программы
      • Закладки
    • Основы написания кода
      • Размещение оператора на нескольких строках
      • Несколько операторов на одной строке
      • Добавление комментариев
      • Понятие о системах счисления
      • Соглашения об именовании в Visual Basic
  • Введение в переменные, константы и типы данных
    • Переменные
      • Хранение и получение данных из переменных
      • Объявления переменных
      • Неявное объявление
      • Явное объявление
    • Область видимости переменной
      • Определение области видимости
      • Переменные уровня процедуры
      • Переменные уровня модуля
      • Открытые переменные
    • Более сложные свойства переменных
      • Одноименные переменные
      • Открытые и локальные переменные
      • Оттеснение свойств и элементов управления формы
      • Использование переменных и процедур с одинаковыми именами
    • Статические переменные
      • Объявление всех локальных переменных как статических
    • Константы
      • Создание собственных констант
      • Область видимости констант, определяемых пользователем
      • Циклические ссылки
    • Типы данных
      • Объявление переменных с заданием типа
      • Числовые типы данных
      • Тип данных Byte
      • Тип данных String
      • Обмен строками и числами
      • Тип данных Boolean
      • Тип данных Date
      • Тип данных Object
      • Преобразование типов данных
      • Тип данных Variant
      • Значение Empty
      • Значение Null
      • Значение Error
    • Дополнительные возможности типа Variant
      • Внутреннее представление значений в переменных типа Variant
      • Числовые значения, хранимые в переменных типа Variant
      • Строки, хранимые в переменных типа Variant
      • Хранение дат и времени в переменных типа Variant
      • Объекты, хранимые в переменных типа Variant
    • Массивы
      • Объявление массива фиксированной длины
      • Установка верхних и нижних границ
      • Массивы, содержащие другие массивы
      • Многомерные массивы
      • Использование циклов для обработки массивов
    • Динамические массивы
      • Сохранение динамических массивов
  • Введение в процедуры
    • Процедуры Sub
      • Общие процедуры
      • Процедуры обработки событий
    • Процедуры Function
    • Работа с процедурами
      • Создание новых процедур
      • Выбор существующих процедур
      • Вызов процедур
      • Вызов процедур Sub
      • Вызов процедур Function
      • Вызов процедур из других модулей
    • Передача параметров в процедуры
      • Типы данных параметров
      • Передача параметров по значению
      • Передача параметров по ссылке
      • Необязательные параметры
      • Значения по умолчанию для необязательных параметров
      • Неизвестное число параметров
      • Создание более простых операторов с помощью ключевых параметров
  • Введение в управляющие конструкции
    • Конструкции принятия решения
      • Конструкция If...Then
      • Конструкция If...Then...Else
      • Конструкция Select Case
    • Циклы
      • Конструкция Do...Loop
      • Конструкция For...Next
      • Конструкция For Each...Next
    • Работа со структурами управления
      • Вложенные структуры управления
      • Выход из структур управления
      • Выход из процедур Sub и Function
  • Работа с объектами
    • Что такое объект?
      • Происхождение объектов
    • Что можно делать с объектами?
      • Visual Basic может комбинировать объекты из других источников
    • Основы работы с объектами
      • Управление объектами с помощью свойств
      • Установка значений свойств
      • Получение значений свойств
      • Использование методов в коде
    • Взаимосвязь объектов
      • Иерархия объектов
      • Наборы объектов
      • Объекты, содержащие другие объекты
      • Общие наборы в Visual Basic
      • Свойство Container
      • Связь между объектами
    • Создание объектов
      • Использование переменных для объектов
      • Объявление переменных для объектов
      • Назначение объектов переменным
      • Типы конкретных и родовых объектов
      • Формы как объекты
      • Ключевое слово New
      • Освобождение ссылок на объекты
      • Передача объектов в процедуры

Часть II. Что можно сделать при помощи Visual Basic

Глава 6. Создание интерфейса пользователя

  • Образцы приложений: Mdinote.vpb, Sdinote.vbp
  • Стили интерфейса
  • Приложения MDI
      • Создание приложения MDI
    • Работа с подчиненными формами во время разработки
    • Свойства форм MDI во время выполнения
    • Приложение MDI NotePad
    • Работа с формами MDI и подчиненными формами
      • Назначение активной подчиненной формы или элемента управления
      • Загрузка форм MDI и подчиненных форм
      • Поддержка информации о состоянии подчиненной формы
      • Выгрузка форм MDI с помощью события QueryUnload
  • Еще о формах
    • Установка первой загружаемой формы
    • Запуск приложения без первой загружаемой формы
    • Отображение заставки при запуске
    • Завершение приложения
  • Создание меню в приложении
    • Создание меню с помощью Menu Editor
      • Список в Menu Editor
      • Разделители команд меню
      • Назначение клавиш доступа и быстрых клавиш
      • Быстрые клавиши
    • Заголовок меню и принципы его задания
      • Установка свойства Caption
      • Пункты меню
    • Создание подменю
    • Создание массива элементов управления меню
    • Создание и модификация меню во время выполнения
      • Разрешение команд меню
      • Отображение метки на элементе управления меню
      • Как сделать элементы управления меню невидимыми
      • Добавление элементов меню во время выполнения
    • Написание кода для элементов управления меню
    • Отображение контекстных меню
      • Параметр flags
      • Параметр Boldcommand
    • Меню в приложениях MDI
      • Создание меню для приложений MDI
      • Создание меню Window
      • Компоновка подчиненных форм
  • Панели инструментов
    • Создание панели инструментов
      • Программирование панелей инструментов
    • Отображение меню и панелей инструментов
      • Управление отображением меню
      • Управление отображением панели инструментов
  • Диалоги
    • Модальные и немодальные окна диалога
    • Встроенные окна диалога
      • Функция InputBox
      • Функция MsgBox
    • Формы как нестандартные окна диалога
      • Добавление заголовка
      • Установка свойств стандартного окна диалога
      • Добавление и размещение кнопок управления
      • Установка свойств Default, Cancel и Focus
      • Блокировка элементов управления в окне диалога
      • Отображение нестандартного окна диалога
  • Разработка для дисплеев различных типов
      • Разработка форм, не зависящих от разрешения дисплея
      • Разработка для разных цветовых палитр
  • Разработка с точки зрения пользователя
    • Основы разработки интерфейса
      • Внешний вид приложения
      • Использование цвета и изображений
      • Выбор шрифтов
    • Что такое хороший интерфейс?
      • Интерфейс приложения Windows
      • Тестирование на простоту и удобство
    • Когда дела идут плохо: взаимодействие с пользователями
      • Создание окон диалога
      • Обработка ошибок без окон диалога
    • Отладка системы помощи пользователю
      • Справка и документация
      • Средства помощи пользователю

Глава 7. Стандартные элементы управления Visual Basic

    • Образцы приложения: Alarm.vbp, Calc.vbp, Controls.vbp, Flex.vbp, Winseek.vbp
  • Введение в элементы управления Visual Basic
      • Категории элементов управления
    • Встроенные элементы управления
    • Стандартные элементы управления ActiveX
      • Добавление и удаление элементов управления ActiveX
    • Замена предыдущих версий элементов управления Visual Basic
    • Соглашения об именовании элементов управления
    • Значение элемента управления
    • Проверка данных элемента управления
    • Массивы элементов управления
      • Зачем нужны массивы элементов управления?
      • Образец приложения: Calc.vbp
    • Создание массива элементов управления во время разработки
    • Добавление элементов управления в массив во время выполнения
    • Массив элементов управления: сценарии добавления и удаления элементов
      • События в приложении-примере
  • Элемент управления ADO Data
    • Свойства элемента управления ADO Data для работы с базами данных
    • Элементы управления, связанные с элементом управления ADO Data
  • Элемент управления Check box
    • Свойство Value
    • Событие Click
    • Реагирование на мышь и клавиатуру
    • Изменение внешнего вида флажка
  • Элемент управления Combo box
    • Применение комбинированных окон и списков
    • Возможности связывания
    • Стили элемента управления Combo box
    • Добавление элементов в список
    • Сортировка списка
    • Удаление элементов из списка
    • Доступ к содержимому списка с помощью свойства Text
    • Доступ к элементам списка с помощью свойства List
    • Определение положения с помощью свойства ListIndex
    • Возвращение числа элементов с помощью свойства ListCount
  • Элемент управления Command Button
    • Добавление кнопки управления на форму
    • Выбор кнопки управления
    • Изменение внешнего вида кнопки управления
  • Элемент управления Common Dialog
    • Отображение диалоговых окон Open и Save As
    • Диалоговое окно Color
    • Диалоговое окно Font
    • Диалоговое окно Print
    • Отображение файла справки при помощи метода ShowHelp
  • Элемент управления Data
  • Элементы управления DataCombo и DataList
    • Связывание двух таблиц с помощью элементов управления DataCombo и DataList
    • Создание простого приложения DataCombo
  • Элемент управления DataGrid
    • Изменение отображенных данных во время выполнения
    • Возврат значений от элемента управления DataGrid
    • Связи с данными Northwind OLE DB
    • Создание простого приложения для работы с базой данных с помощью элементов управления DataGrid и ADO Data
    • Создание элемента управления DataGrid, связанного с элементом управления DataList
    • Работа со столбцами
      • Добавление, удаление и скрытие столбцов
    • Управление видом отображения в элементе управления DataGrid
    • Отслеживание записей с помощью закладок и набора SelBookmarks
    • Отображение вычисляемых полей
    • Использование элемента управления DataGrid с модулем класса
  • Файловые элементы управления
      • Образец приложения: Winseek.vbp
    • Исследование файловой системы
    • Элемент управления Drive List Box
    • Элемент Directory List Box
      • Идентификация конкретных каталогов
      • Установка текущего каталога
      • Списки каталогов
      • Поиск относительного положения каталога
    • Элемент управления File List Box
      • Атрибуты файлов
    • Совместное использование файловых элементов управления
    • Сценарий для файловых элементов управления: приложение WinSeek
      • Написание кода для приложения WinSeek
      • Событие Change списка дисков
      • Событие Change списка каталогов
      • Событие Click кнопки управления
  • Элемент управления Frame
    • Добавление рамки на форму
    • Рисование элементов управления внутри рамки
    • Выбор нескольких элементов управления в рамке
  • Элемент управления Microsoft Hierarchical FlexGrid
      • Доступ к элементу управления Hierarchical FlexGrid
    • Привязывание данных к элементу управления Hierarchical FlexGrid
      • Связывание данных с иерархическим элементом управления FlexGrid при помощи Диспетчера связывания данных
      • Программное связывание данных с элементом управления Hierarchical FlexGrid
    • Использование элемента управления Hierarchical FlexGrid с иерархическим набором Recordset
    • Форматирование ленты
      • Изменение компоновки ленты
      • Отображение заголовков столбцов
      • Изменение порядка столбцов
      • Изменение цвета и разделительных линий
      • Смещение ленты
      • Использование свойств ленты с неиерархическими наборами записей
    • Разворачивание и сворачивание лент
    • Получение структуры
    • Внешний вид областей элемента управления Hierarchical FlexGrid
      • Настройка внешнего вида стандартной области
      • Настройка внешнего вида фиксированной области
      • Настройка внешнего вида заголовков
      • Изменение внешнего вида незаполненной области
    • Связывание элемента управления Hierarchical FlexGrid с Data Environment
    • Сортировка и слияние данных в элементе управления Hierarchical FlexGrid
      • Установка свойств элемента управления
      • Сортировка и слияние данных
    • Редактирование ячеек в крупноформатной таблице элемента управления Hierarchical FlexGrid
      • Создание элементов управления
      • Установка значений свойств элементов управления
      • Редактирование ячеек в крупноформатной таблице
    • Отображение схемы с заголовками при помощи элемента управления Hierarchical FlexGrid
      • Установка значений свойств элемента управления
      • Создание схемы отображения с заголовками
  • Элементы управления Horizontal Scroll Bar и Vertical Scroll Bar
      • Как работают элементы управления Scroll Bar
    • Сценарий использования полос прокрутки: создание прокручиваемого графического окна
      • Изменение размеров формы во время выполнения
  • Элемент управления Image
    • Когда применять элемент управления Image вместо элемента управления Picture Box
    • Поддерживаемые графические форматы
    • Загрузка графики в элемент управления Image
    • Свойство Stretch
  • Элемент управления Label
    • Установка свойства Caption
    • Использование меток для создания клавиш доступа
  • Элемент управления Line
    • Свойства BorderStyle и BorderColor
    • Перемещение отрезка линии и изменение его размеров
    • Вычерчивание линий на форме
  • Элемент управления List Box
    • Возможности привязки данных
    • События Click и DoubleClick
    • Добавление элементов в список
    • Добавление элемента в заданной позиции
    • Сортировка списка
    • Удаление элементов из списка
    • Доступ к содержимому списка с помощью свойства Text
    • Доступ к элементам списка с помощью свойства List
    • Свойство ListIndex
    • Свойство ListCount
    • Создание списков, допускающих множественный выбор элементов
    • Сценарий 1 для элемента управления List Box: добавление и удаление элементов
      • События в приложении List Box
    • Сценарий 2 для элемента управления List Box: создание многоколоночного списка
      • События в многоколоночном приложении
  • Элемент управления OLE Container
  • Элемент управления Option Button
    • Создание групп переключателей
    • Выбор переключателя во время выполнения
    • Недоступный переключатель
  • Элемент управления Picture Box
    • Поддерживаемые графические форматы
    • Изменение размеров графического окна
    • Использование графического окна в качестве контейнера
    • Графические методы
    • Использование метода Print
  • Элемент управления Remote Data
  • Элемент управления Shape
    • Стандартные контуры
    • Стили заполнения и линий
    • Установка атрибутов цвета
    • Рисование контуров на форме
  • Элемент управления Text Box
    • Свойство Text
    • Форматирование текста
    • Выбор текста
    • Создание текстового поля для ввода пароля
    • Отмена нажатия клавиш при работе с текстовым полем
    • Создание нередактируемого текстового поля
    • Печать двойных кавычек в строке
  • Элемент управления Timer
      • Образец приложения: Alarm.vbp
    • Помещение таймера на форму
    • Инициализация таймера
    • Обработка события Timer

Глава 8. Еще о программировании

  • Работа с несколькими проектами
      • Добавление или удаление проекта
      • Задание загружаемого проекта
  • Управление установками приложения
    • Создание и сохранение установок приложения
    • Получение установок приложения
      • Одна установка
      • Несколько установок
    • Удаление установок приложения
  • Условная компиляция
    • Структурирование кода для условной компиляции
    • Объявление констант условной компиляции
  • Работа с файлами ресурсов
    • Добавление ресурсов в проект
    • Использование ресурсов в программе
  • Работа с шаблонами
  • Ключи командной строки
  • Компиляция проекта
  • Создание собственных типов данных
    • Объявление переменных с типом, определяемым пользователем
    • Назначение и получение значений
    • Определяемые пользователем типы, содержащие массивы
    • Передача определяемых пользователем типов в процедуры
    • Определяемые пользователем типы, содержащие объекты
    • Структуры вложенных данных
  • Использование перечислений для работы с множествами констант
    • Расширенные возможности массивов
      • Присваивание массивов
      • Возвращение массива из функции
  • Наборы — альтернатива массивам

Глава 9. Объекты и программирование

    • Образцы приложений: ProgWOb.vbp, Dataware.vbp
  • Понятие об объектах в Visual Basic
    • Немного о терминологии
    • Какому классу принадлежит объект?
    • Вызов свойства или метода по имени
    • Выполнение нескольких действий на объекте
    • Свойства по умолчанию
      • Свойства по умолчанию и объектные переменные
      • Свойства по умолчанию и переменные типа Variant
    • Создание массивов объектов
      • Массивы переменных типа Form
      • Массивы переменных типа Control
    • Создание наборов объектов
    • Объект Collection
      • Как устроен объект Collection?
      • Свойства и методы объекта Collection
      • Добавление элементов в набор
      • Удаление элементов из набора
      • Получение элементов из набора
    • Наборы в Visual Basic
      • Наборы, основанные на нуле и единице
      • Значения индекса и ключа
      • Добавление и удаление элементов
      • Что же он содержит?
      • Перечисление набора
  • Сущность объектов
    • Содержимое Object Browser
      • Управление содержимым Object Browser
    • Поиск и просмотр объектов
    • Добавление описаний собственных объектов
    • Перемещение между процедурами
    • Просмотр объектов других приложений
  • Создание собственных классов
    • Классы: совмещение определяемых пользователем типов и процедур
      • Объект: определяемый пользователем тип с отношением
    • Подгонка классов форм
      • Скрытая глобальная переменная
    • Модуль класса шаг за шагом
    • Отладка модулей классов
    • Цикл жизни форм Visual Basic
      • Состояния формы Visual Basic
    • Модули классов и стандартные модули
  • Добавление свойств и методов к классу
    • Добавление событий к классу
    • Процедуры свойств
    • Процедуры свойств и открытые переменные
    • Виды процедур свойств
    • Добавление методов к классу
      • Объявления методов как открытых процедур Sub
      • Защита деталей реализации
    • Это свойство или метод?
    • Создание свойства и метода по умолчанию
    • Дружественные свойства и методы
  • Добавление событий к классу
    • Объявление и вызов событий
    • Управление событиями объекта
    • Сравнение переменных WithEvents с событиями элементов управления на форме
    • Добавление события к форме
    • Объявления, вызовы и обработка событий: резюме
  • Создание классов для работы с данными
    • Создание источника данных
    • Создание потребителя данных
  • Именование свойств, методов и событий
  • Полиморфизм
    • Как Visual Basic обеспечивает полиморфизм
    • Создание и реализация интерфейса
    • Реализация свойств
    • Краткое обсуждение объектов и интерфейсов
    • Многоликость повторно используемого кода
      • Передача полномочий реализованным объектам
  • Программирование с собственными объектами
    • Объектные ссылки и подсчет ссылок
  • Объектные модели
    • Объектные модели и отношения вместимости
    • Свойство Parent
  • Создание собственных классов наборов
    • Открытый набор
      • Форма делает всю работу
      • Крепкий, как дом из соломы
    • Закрытый набор
    • Создание собственного класса набора: дом из кирпичей
    • Преимущества хорошего объектно-ориентированного дизайна
      • Усиление классов наборов
  • Дизайнеры ActiveX
    • Что такое дизайнеры ActiveX
      • Дизайнеры ActiveX и встроенные дизайнеры
      • Классы дизайнера ActiveX и другие визуально разработанные классы
      • Объекты дизайнера ActiveX во время выполнения
      • Создание дизайнеров ActiveX
    • Добавление дизайнера ActiveX в меню Project
    • Вставка нового экземпляра дизайнера ActiveX

Глава 10. Программирование компонентов ActiveX

  • Интерфейсы: Geofacts.vbp и Olecont.vbp
  • Типы компонентов ActiveX
  • Серверы ActiveX
  • Работа с компонентами ActiveX
  • Создание ссылки на объект
  • Неопределенные ссылки и приоритет ссылки
  • Поиск библиотек типов компонентов ActiveX
  • Объявление объектной переменной
  • Присваивание ссылки на объект
    • Присваивание ссылки на объект с помощью ключевого слова New
    • Присваивание ссылки на объект с помощью функции CreateObject
    • Присваивание ссылки на объект с помощью функции GetObject
  • Ускорение обработки объектных ссылок
    • Позднее связывание
    • Раннее связывание
  • Использование свойств, методов и событий объекта
  • Свойства и методы объекта
    • Реакция на события объекта
  • Освобождение компонента ActiveX
  • Перемещение по объектным моделям
  • Перемещение по иерархии объектов
  • Объекты наборов
  • Работа с создаваемыми внешне и зависимыми объектами
    • Внешне создаваемые объекты
    • Зависимые объекты
  • Обработка ошибок времени выполнения в компонентах ActiveX
  • Тестирование ссылок на объекты
  • Обработка запросов компонентом ActiveX
  • Состояние занятого компонента
  • Состояние незавершенного запроса
  • Изменение сообщений о занятости компонента или незавершенности запроса
  • Управление интервалами ожидания
  • Возникновение ошибки во время ожидания занятого компонента
  • Визуальный интерфейс компонента
  • Вставка объекта с помощью OLE Container
  • Вставка объекта добавлением его класса в Toolbox
  • Связанные и внедренные объекты
    • Связанные объекты
    • Внедренные объекты
  • Вставка объектов во время разработки с помощью OLE Container
    • Вставка связанных объектов во время разработки
    • Создание внедренных объектов во время разработки
    • Создание объектов в диалоговом окне Paste Special
  • Создание объектов во время выполнения с помощью OLE Container
    • Свойство Object
    • Создание связанных объектов во время выполнения
    • Создание внедренных объектов во время выполнения
    • Связывание базы данных с OLE Container
  • Разрешение пользователю задавать объекты во время выполнения
  • Настройка отображения объекта в OLE Container
  • Активизация объекта в OLE Container
    • Активизация по месту
  • Реагирование на перемещение или изменение размеров контейнера
  • Сохранение и получение внедренных данных

Глава 11. События мыши и клавиатуры

  • Образец приложения: Mouse.vbp
  • События мыши
    • Событие MouseDown
      • Использование события MouseDown совместно с методом Move
      • Использование события MouseDown совместно с методом Line
    • Событие MouseMove
      • Использование события MouseMove совместно с методом Line
      • Как работает событие MouseMove
    • Событие MouseUp
  • Состояния кнопок мыши
    • Параметр button для событий MouseDown и MouseUp
    • Параметр button для события MouseMove
      • Проверка для одной кнопки
      • Проверка для нескольких кнопок
    • Параметр button в графических приложениях
  • Состояния клавиш <Shift>, <Ctrl> и <Alt>
  • Перетаскивание мышью
    • Установка автоматического режима
    • Изменение значка перетаскивания
    • Событие DragDrop
    • Начало и остановка перетаскивания
    • Изменение положения элемента управления
  • Перетаскивание и технология OLE
    • Установка автоматического режима OLE drag-and-drop
    • Объект DataObject
    • Механизм OLE-перемещения
    • Начало операции OLE drag-and-drop
      • Метод OLEDrag
      • Выполнимые действия и поддерживаемые форматы данных
      • Помещение данных в объект DataObject
    • Перемещение источника над адресатом
      • Параметр State события OLEDragOver
      • Нестандартная обратная связь с пользователем
      • Событие OLEDragOver
      • Событие OLEGiveFeedback
    • Помещение источника в адресат
      • Изъятие данных
      • Помещение данных в объект DataObject
      • Информирование источника о помещении данных
    • Параметры button и shift
    • Создание нестандартного формата данных
    • Перемещение файлов из Проводника Windows
  • Настройка указателя мыши
    • Значки и курсоры
  • События клавиатуры
    • Обработчик клавиатуры нижнего уровня
    • Событие KeyPress
    • События KeyDown и KeyUp
      • Параметр KeyCode
      • Параметр Shift
    • Обработчики клавиатуры уровня формы
  • Прерывание фоновой обработки
    • Разрешение пользователям прерывать задачи
    • Функция DoEvents

Глава 12. Работа с текстом и графикой

  • Образцы приложений: Blanker.vbp, Palettes.vbp
  • Работа со шрифтами
    • Выбор шрифтов для приложения
    • Проверка доступных шрифтов
    • Создание собственных типов шрифтов
    • Установка характеристик шрифтов
      • Установка свойств шрифтов
      • Применение свойств шрифтов к определенным объектам
      • Свойство FontTransparent
  • Отображение текста на формах и в графических окнах
    • Использование метода Print
    • Отображение нескольких элементов в одной строке
    • Управление печатью
      • Метод Cls
      • Установка координат
      • Методы TextHeight и TextWidth
  • Форматирование чисел, дат и времени
    • Именованные форматы
    • Числовые форматы
    • Форматы дат и времени
  • Работа с выделенным текстом
  • Помещение текста и графики в объект Clipboard
    • Вырезание, копирование и вставка текста с помощью Буфера обмена
      • Свойство ActiveControl
    • Работа с несколькими форматами в Буфере обмена
    • Проверка форматов данных в Буфере обмена
  • Система координат
    • Что такое твип?
    • Изменение системы координат объекта
      • Масштаб по умолчанию
      • Выбор стандартного масштаба
      • Создание собственного масштаба
      • Метод Scale
    • Преобразование масштабов
  • Графические элементы управления
    • Преимущества графических элементов управления
    • Ограничения графических элементов управления
    • Добавление графики в приложение
      • Добавление графики во время разработки
      • Добавление графики во время выполнения
      • Удаление графики во время выполнения
      • Перемещение и изменение размеров изображений
      • Выбор изображения для графического окна
    • Введение в графические свойства форм и элементов управления
    • Свойство AutoRedraw
      • Сохраняющаяся графика
    • Отсечение областей с помощью свойства ClipControls
      • Свойство ClipControls формы и контейнеры
    • Слои графики, свойства AutoRedraw и ClipControls
      • Нормальное расслоение
      • Воздействие на расслоение
    • Динамическое перемещение элементов управления
      • Свойства Left и Top
      • Перемещение элемента управления Line
      • Метод Move
    • Динамическое изменение размеров элементов управления
    • Создание простой анимации
  • Графические методы
    • Преимущества графических методов
    • Ограничения графических методов
    • Основы графических методов
      • Создание области рисования
    • Вычерчивание точек
    • Вычерчивание линий и контуров
      • Ключевое слово Step
      • Параметр Color
    • Вычерчивание прямоугольников
      • Свойство FillStyle и FillColor
    • Вычерчивание окружностей
    • Вычерчивание дуг
    • Вычерчивание эллипсов
    • Размещение графики
    • Задание толщины линии
    • Задание сплошных и пунктирных линий
    • Свойство DrawMode
    • Создание графики при загрузке формы
  • Работа с цветом
    • Использование цветовых свойств
      • Определение цветов
    • Работа с 256 цветами
      • Палитры
    • Управление несколькими палитрами
      • Свойство PaletteMode
  • Объект Picture
  • Печать
    • Печать из приложения
      • Метод PrintForm
      • Набор Printers
      • Объект Printer
    • Печать с помощью объекта Printer
      • Свойства объекта Printer
      • Печать форм на объекте Printer
      • Печать содержимого объекта Printer
    • Перехват ошибок принтера

Глава 13. Отладка кода и обработка ошибок

  • Образец приложения: Errors.vbp
  • Как обрабатывать ошибки
  • Создание обработчика ошибок
    • Перехват ошибок
    • Написание программы обработки ошибок
    • Выход из программы обработки ошибок
      • Операторы Resume и Resume Next
      • Возобновление выполнения с заданной строки
  • Иерархия обработки ошибок
    • Поиск в списке вызовов
      • Принципы комплексной обработки ошибок
  • Тестирование обработки ошибок
    • Определение собственных ошибок
  • Построковая обработка ошибок
    • Возвращение номеров ошибок
    • Обработка ошибок в вызывающей процедуре
    • Использование вариантных типов данных
  • Централизованная обработка ошибок
  • Отключение обработки ошибок
    • Отладка кода с помощью обработчиков ошибок
  • Обработка ошибок с помощью компонентов ActiveX
    • Обработка ошибок в объектах
    • Отладка обработчиков ошибок в компонентах ActiveX
  • Подходы к отладке
    • Ошибки компиляции
    • Ошибки времени выполнения
    • Логические ошибки
    • Средства отладки
  • Предупреждение ошибок кода
  • Время разработки, время выполнения и режим прерываний
    • Определение текущего режима
    • Использование панели инструментов для изменения режима
  • Использование окон отладки
  • Режим прерываний
    • Вход в режим прерываний
    • Исправление ошибки времени выполнения и продолжение вычислений
    • Мониторинг данных с помощью наблюдаемых выражений
      • Добавление наблюдаемого выражения
      • Редактирование и удаление наблюдаемого выражения
      • Идентификация наблюдаемых типов
      • Использование окна Quick Watch
    • Использование точки останова
      • Исследование приложения в точке останова
    • Использование операторов Stop
  • Выполнение выделенной части приложения
    • Команда Step Into
    • Команда Step Over
    • Команда Step Out
    • Обход секций кода
    • Установка следующего выполняемого оператора
    • Показ следующего выполняемого оператора
  • Мониторинг стека вызовов
    • Трассировка вложенных процедур
    • Проверка рекурсивных процедур
  • Тестирование данных и процедур в окне Immediate
    • Печать информации в окне Immediate
      • Печать значений свойств
    • Присваивание значений переменным и свойствам
    • Тестирование процедур в окне Immediate
      • Просмотр и тестирование нескольких экземпляров процедур
    • Проверка номеров ошибок
    • Советы по использованию окна Immediate
  • Специальные соглашения отладки
    • Прерывание выполнения во время события MouseDown
    • Прерывание выполнения во время события KeyDown
    • Прерывание выполнения во время события GotFocus или LostFocus
    • Модальные диалоги и окна сообщений запрещают события
    • Тестирование и использование параметров командной строки
    • Удаление отладочной информации перед компиляцией
    • Проверка кода с помощью утверждений
    • Компиляция по требованию
  • Советы по отладке

Глава 14. Работа с дисководами, папками и файлами

  • Введение в File System Object Model
  • Объекты файловой системы
  • Программирование в объектной модели FSO
  • Создание объекта FileSystemObject
  • Выбор подходящего метода
  • Доступ к дискам, файлам и папкам
  • Доступ к свойствам объектов
  • Диски и папки
    • Получение информации о дисках
    • Пример использования объекта Drive
    • Работа с папками
  • Файлы
    • Создание файлов и добавление данных с помощью объектов файловой системы (FSO)
    • Чтение файла с помощью объектов файловой системы
    • Перемещение, копирование и удаление файлов
  • Обработка файлов и файловые функции
  • Типы доступа к файлам
  • Функции и операторы доступа к файлам
  • Последовательный доступ к файлам
    • Открытие файлов для последовательного доступа
    • Редактирование файлов последовательного доступа
  • Произвольный доступ к файлам
    • Объявление переменных
    • Открытие файлов для произвольного доступа
    • Редактирование файлов произвольного доступа
  • Доступ к двоичным файлам
    • Открытие файла для двоичного доступа
    • Хранение информации в полях переменной длины

Глава 15. Разработка производительных и совместимых приложений

  • Образец приложения: Optimize.vbp
  • Суть оптимизации приложения
    • Что оптимизировать?
    • Где оптимизировать?
    • Когда остановиться?
  • Оптимизация скорости выполнения
    • Оптимизация кода
      • Избегайте вариантных переменных
      • Используйте целочисленную арифметику
      • Помещайте часто используемые свойства в переменные
      • Заменяйте вызовы процедур встраиваемым кодом
      • Используйте константы
    • Передавайте не модифицируемые параметры по значению, а не по ссылке
      • Задавайте тип необязательных параметров
      • Используйте преимущества наборов
    • Измерение производительности
    • Оптимизация скорости отображения
      • Установка свойства ClipControls контейнера равным False
      • Использование свойства AutoRedraw
      • Использование элементов управления Image вместо графических окон
      • Скрывайте элементы управления при установке свойств
      • Использование метода Line вместо Pset
    • Оптимизация воспринимаемой скорости
      • Держите формы скрытыми, но загруженными
      • Заранее загружайте данные
      • Используйте таймеры при работе в фоновом режиме
      • Используйте прогресс-индикаторы
      • Ускоряйте загрузку приложения
  • Оптимизация размеров приложений
    • Уменьшение размера кода
      • Уменьшение числа загружаемых форм
      • Уменьшение числа элементов управления
      • Использование меток вместо текстовых полей
      • Хранение данных в дисковых файлах или файлах ресурсов
      • Организация модулей
      • Использование альтернативных типов для вариантного типа данных
      • Использование динамических массивов
      • Восстановление памяти, используемой строковыми или объектными переменными
      • Исключение неиспользуемых фрагментов кода и переменных
    • Сокращение графики
      • Отображение растров при помощи элемента управления Image
      • Используйте метод PaintPicture
      • Освобождайте память, используемую графикой
      • Используйте растры формата RLE или метафайлы
    • Сегментированные приложения
      • Кросс-компоненты
      • Встроенный компонент
      • Удаленные компоненты
  • Оптимизация объектов
    • Раннее связывание
    • Минимизация точек
    • Операторы Set и With...End With
    • Кросс-вызовы
  • Интерпретируемые и компилируемые приложения
  • Совместимость с другими приложениями Microsoft
    • Совместимость с Visual Basic for Applications
    • Совместимость с Visual Basic Scripting Edition

Глава 16. Локализация приложений

  • Образец приложения: Atm.vbp
  • Определения
    • Международное программное обеспечение
    • Место действия
    • Локализация
    • Строковые ресурсы
  • Разработка международного программного обеспечения
    • Модель локализации
  • Использование файлов ресурсов для локализации
    • Преимущества хранения строк в файлах ресурсов
    • Блокировка файлов ресурсов
    • Образец приложения Automated Teller Machine
  • Разработка интерфейса пользователя для международного приложения
    • Сообщения
    • Меню и диалоговые окна
    • Значки и растры
    • Быстрые клавиши и клавиши доступа
  • Общие рекомендации по разработке кода международных приложений
    • Размеры буферов
    • Конкатенация строк
  • Программирование международных приложений в Visual Basic
    • Системный и кодовый регионы
    • Дата
    • Валюта
    • Числовые значения и разделители
    • Функции для работы с регионами
      • Метод Print
      • Функция Format
      • Международный порядок сортировки и сравнения строк
      • Сортировка текста
      • Сравнение строк в Visual Basic
    • Ввод/вывод файлов в международном приложении
      • Print #
      • Write #
    • SQL-запросы, основанные на информации о регионах и датах
      • DateSerial и DateValue
  • Специфические особенности DBCS
    • ANSI, DBCS и Unicode: определения
      • ANSI
      • DBCS
      • Unicode
      • Примеры кодирования символов
    • Порядок сортировки и сравнения строк в наборе DBCS
    • Функции работы со строками DBCS
      • Преобразование строк DBCS
    • Соглашения о шрифтах, отображении и печати в окружении DBCS
      • Как избежать изменения установок параметров шрифтов
      • Как изменить шрифт во время выполнения
    • Обработка файлов, использующих двухбайтные символы
    • Идентификаторы в окружении DBCS
    • Событие KeyPress, разрешающее использование DBCS
    • Вызов функций Windows API
  • Двунаправленные возможности Visual Basic

Глава 17. Распространение разработанных приложений

  • Мастер упаковки и развертывания
      • Мастер Package and Deployment Wizard и проект Setup Toolkit
    • Запуск Мастера упаковки и развертывания
      • Выполнение Мастера в немом режиме
  • Упаковка приложения с помощью Мастера
    • Разрешенные для распространения файлы
    • Общие шаги в процессе упаковки
    • Возможности упаковки
    • Стандартные пакеты
      • Части стандартного пакета
      • Возможности доступа к данным
      • Возможности Remote Automation и DCOM
      • Файлы Реестра
      • Пропущенные или устаревшие файлы
    • Пакеты Internet
      • Части пакета Internet
      • Загрузка компонента из Internet
      • Вопросы безопасности
    • Файлы зависимостей
      • Типы файлов зависимостей
      • Отсутствие информации о зависимостях
  • Развертывание приложения с помощью Мастера
    • Общие шаги в процессе развертывания
    • Возможности развертывания
    • Развертывание приложения
      • Развертывание на гибких дисках, компакт-дисках, в каталогах локальных и сетевых дисков
      • Развертывание на Web
  • Управление сценариями Мастера
  • Набор инструментов установки
    • Создание нестандартной программы установки
    • Модификация проекта Setup Toolkit
    • Обязательные файлы
      • Файлы времени выполнения
      • Файлы установки для стандартных пакетов
      • Зависимости приложений
    • Размещение файлов на машине пользователя
      • Программные файлы
      • Общие файлы приложений
      • Компоненты Remote Automation
  • Редактирование файла Setup.lst
    • Секция BootStrap
    • Секция BootStrap Files
    • Секция Setup1 Files
    • Секция Setup
    • Секция IconGroups
    • Формат секций BootStrap и Setup1 Files
    • Макросы параметра Path в файлах Setup.lst
    • Ключи Реестра в файлах Setup.lst
    • Задание компонентов удаленных серверов в файле Setup.lst
  • Создание дистрибутивного носителя
    • Создание дистрибутивных дисков
      • Развертывание на Web-сайте
  • Использование Мастера упаковки и развертывания вместе с проектом Setup Toolkit
  • Тестирование программы установки
  • Разрешение пользователю удалять приложение
    • Ситуации, при которых утилита удаления приложений может дать сбой
  • Развертывание локализованных элементов управления ActiveX

Часть III. Приложения

Приложение А. Спецификации, ограничения и форматы файлов в Visual Basic
  • Системные требования к приложениям Visual Basic
  • Ограничения для проектов
    • Ограничения на элементы управления
      • Общее число элементов управления
      • Ограничения на конкретные элементы управления
    • Ограничения на код
      • Процедуры, типы и переменные
      • Таблица объявлений DLL
      • Таблица имен проекта
      • Таблица Import
      • Таблица входов модулей
    • Ограничения на данные
      • Данные модулей форм, классов и стандартных модулей
      • Процедуры, типы и переменные
      • Определяемые пользователем типы
      • Пространство стека
    • Ограничения на системные ресурсы
      • Ресурсы Windows
  • Форматы файлов проектов
      • Расширения файлов проектов
  • Структуры форм
      • Печать описаний форм
    • Номер версии
    • Описание формы
      • Блоки элементов управления
      • Блоки внедренных элементов управления
      • Меню
      • Комментарии в описании формы
    • Свойства описаний форм
      • Синтаксис
      • Двоичные значения свойств
      • Свойство Icon
      • Свойство TabIndex
      • Единицы измерения
      • Цветовые значения
      • Объекты свойств
      • Основной код
    • Образец формы в коде ASCII
    • Ошибки загрузки файла формы
    • Сообщения в журнале ошибок загрузки формы
    • Формат файла проекта (VBP)
Приложение B. Соглашения о кодировании в Visual Basic
  • Зачем нужны соглашения о кодировании?
    • Минимальные соглашения о кодировании
  • Соглашения об именовании объектов
    • Примерные префиксы элементов управления
    • Примерные префиксы для Data Access Objects (DAO)
    • Примерные префиксы для меню
      • Выбор префиксов для других элементов управления
  • Соглашения об именовании констант и переменных
    • Префиксы области видимости переменных
    • Константы
    • Переменные
    • Типы данных переменных
    • Образные имена переменных и процедур
    • Определяемые пользователем типы
  • Соглашения о структурированном кодировании
    • Соглашения о комментировании кода
      • Форматирование кода
      • Группирование констант
      • Операторы & и +
Приложение C. Ключи компиляции
  • Оптимизация по скорости
  • Оптимизация по размеру
  • Никакой оптимизации
  • Предпочтение Pentium Pro
  • Создание символической информации отладки
  • Никакого совмещения имен
  • Отмена проверки границ массивов
  • Отмена проверки переполнения целой переменной
  • Отмена проверки ошибок действий над числами с плавающей точкой
  • Отмена проверки безопасного режима Pentium FDIV
  • Разрешение операций над числами с плавающей точкой без округлений
Приложение D. Добавление Справки в приложение
  • Добавление поддержки для Справки
    • Свойство HelpFile
    • Свойство HelpContextID
  • Добавление поддержки для Справки "Что это?"
  • Распространение Справки вместе с приложением
    • Распространение WinHelp
    • Распространение HTML Help

Предметный указатель


Информация предоставлена издательством БХВ-Петербург. Книгу можно приобрести в магазине издательства.