Глава 1. Введение в Visual FoxPro |
Элементы языка
Команды
Литералы и
константы
Переменные и
массивы
Процедуры и
функции
Математические,
числовые, статистические и битовые функции
Символьные функции
Выражения и
операторы
Управляющие
конструкции
Таблицы, курсоры и базы данных
Типы табличных
данных
Ключевые поля и
индексация таблиц
Индексация по
сложным выражениям и использование хранимых процедур
Отношения (связи)
между таблицами
Целостность данных
при модификации связанных таблиц
Триггеры и
хранимые процедуры
Классы и объекты
Объектно-ориентированное программирование
Типы объектов
Свойства объектов
События и методы
Введение в классы
Visual FoxPro
Базовые классы
Характеристики ООП
Инкапсуляция
Наследование и
подклассы
Полиморфизм
Стандартные диалоги Visual FoxPro |
|
Глава 2. Интерактивная среда разработки приложений (IDE) |
Главное окно Visual FoxPro
Главное окно и его
заголовок
Главное меню
Панель
инструментов Standard
Окна Command,
Properties и Document View
Менеджер проекта
Мастера, конструкторы и построители
Мастера:
назначение и области применения
Конструкторы как
основной инструмент разработчика
Построители
IntelliSense Manager
Применение
IntelliSense Manager
Настройка
параметров
Task Pane
Toolbox
Debugger
Вкладка Debug
Настройка среды
Настройка
среды разработки
Настройка среды
выполнения. Файл Config.fpw
Использование справочной документации |
|
Глава 3. Проектирование приложений |
Менеджер проекта и определение структуры приложения
Вкладка Projects —
проекты
Компоненты
приложения (типы файлов), их размещение
Узлы Менеджера
проектов
Узел Data
Узел Documents
Узел Class
Libraries
Узел Code
Создание
компонентов проекта в Менеджере проектов
Главный (стартовый)
файл приложения
Главная процедура
приложения и процедурные файлы
Ресурсы
Узел Other
Исполняемые файлы
Создание простого
исполняемого модуля |
|
Глава 4. Формы |
Форма как основной компонент приложения
Модальные и немодальные формы. Форма верхнего уровня
Модальность
Типы интерфейса.
SDI или MDI?
Диалоги
Свойства, события
и методы экранных форм
Создание экранной
формы. Конструктор форм
Панели
инструментов Конструктора форм
Панель
инструментов Form Designer
Панель
инструментов Form Controls
Панель
инструментов Layout
Пункты меню Form и
Format
Размещение на
форме элементов управления
Использование окна
свойств для работы с элементами управления
Добавление в форму
пользовательских свойств и методов
Добавление и редактирование методов
Сохранение формы
Управление формами |
|
Глава 5. Элементы управления |
Порядок размещения элементов управления на форме
Создание элементов
управления с помощью Form Controls Toolbar
Создание элементов
управления через библиотеки классов
Создание элементов
управления через DataEnvironment
Венгерская нотация
Список элементов управления
CheckBox (Флажок)
ComboBox (Комбинированный
список)
Command Button (Кнопка)
Command Group (Группа
кнопок)
Container (Контейнер)
Control
Custom
EditBox (Редактируемое
поле)
Grid
HyperLink (Ссылка)
Image (Графический
объект)
Label (Этикетка)
Line (Линия)
List Box (Список)
OLEBound Control
OLE Control
Option Group (Группа
переключателей)
PageFrame (Набор
страниц)
Shape (Контур)
Spinner (Счетчик)
TextBox (Текстовое
поле)
Timer (Таймер)
Toolbar
|
|
Глава 6. Проектирование баз данных |
Свободные таблицы
Контейнер базы данных
Кодовые страницы
Нормализация данных
Отношение "один-к-одному"
Отношение "один-ко-многим"
Отношение "много-к-одному"
Отношение "много-ко-многим"
Ключевое поле
Проектирование нормализованных баз данных
Первая нормальная
форма
Вторая нормальная
форма
Третья нормальная
форма
Создание и модификация свободных таблиц
Создание таблиц с
помощью Конструктора таблиц
Индексация
Регулярные и
уникальные индексы
Индексация по
сложным выражениям и использование хранимых процедур
Поиск в
индексированной таблице
Выбор активного
индекса в процессе выполнения
Отношения (связи)
между таблицами
Создание таблицы
программным способом
Создание и модификация баз данных
Создание базы
данных с помощью конструктора
Диаграмма
отношений между таблицами
Определение
свойств полей
Определение
свойств таблицы
Триггеры
Хранимые процедуры
Дополнительные
возможности контроля данных и их целостности
Курсоры
Локальные и удаленные представления (назначение) |
|
Глава 7. Работа с данными |
Управление данными
Открытие баз
данных и таблиц
Навигационные команды
Добавление данных в поля типа Blob, Memo и General
Фильтры
Реляционные команды
Использование транзакций
События базы данных
Локальное представление данных
Создание
представления (View) с помощью конструктора представлений
Что такое Rushmore? |
|
Глава 8. Работа с удалёнными данными |
Введение в технологию "клиент-сервер"
Установка
соединения с удаленными данными
Установка
источника данных ODBC
Именованное
соединение
Удаленные
представления (Remote Views)
Сквозной запрос
(SQL pass-through)
MS SQL Server
Способы соединения
с сервером
Использование
команд T-SQL
Краткий справочник
по Transact-SQL
Организация
взаимодействия с удаленным источником данных
Вызов хранимых
процедур
ActiveX Data
Objects (ADO)
Применение
CursorAdapter
Работа с полем,
имеющим свойство IDENTITY
Особенности работы
с полями типа Blob
Поддержка XML
Парсеры
(Анализаторы) |
|
Глава 9. Отображение табличных данных на форме |
DataEnvironment (Среда данных)
Конструктор Data
Environment
Свойства, события
и методы объекта DataEnvironment
Сессии данных
Табличное представление данных
Grid (Сетка)
Объектная модель
Grid
Визуальные эффекты
Grid
OLE-объекты в таблицах
Отображение данных в Grid
Навигация данных |
|
Глава 10. Использование внешних компонентов |
Общие сведения об ActiveX управляющих элементах
Описание и
настройка отдельных компонентов ActiveX
Календарь
TreeView
Управляющий
элемент ActiveX Bound Control |
|
Глава 11. Создание пользовательских классов |
Конструктор классов
Классы и
библиотеки классов
Создание классов в
Конструкторе классов
Обозреватель классов
Программное создание классов
Определение класса
Класс Custom
Управление временем жизни объектов
Класс Collection
Создание
Свойства
Методы
Применение
Класс Empty
Функции для работы с классами и объектами
Функции
ADDPROPERTY() и REMOVEPROPERTY()
Функция ACLASS()
Функция AMEMBERS()
Функция GETPEM()
Функция PEMSTATUS() |
|
Глава 12. Создание меню |
Создание меню в Конструкторе меню
Меню, заменяющее
главное окно Visual FoxPro
Меню формы
верхнего уровня
Раскрывающееся (контекстное)
меню
Команды создания меню
Меню в SDI- и MDI-формах
Вызов меню
Вызов из меню
методов формы
Свойства меню
Восстановление главного меню Visual FoxPro |
|
Глава 13. Отчёты |
Введение в систему отчетов
Непосредственный вывод на принтер
Стандартный отчет (Quick Report)
Мастер отчетов
Конструктор отчетов
Среда окружения
отчета
Панель
инструментов Конструктора отчетов
Выполнение
надписей в отчете
Размещение
табличных полей в отчете
Группировка данных
отчета
Переменные в
отчете
Разметка страницы
OLE-объекты в отчете
Просмотр и печать отчета
Многоколоночный отчет
Создание этикеток
Особенности многополосных отчетов
Управление отчетами — объект ReportListener
Свойства, методы и
события объекта ReportListener |
|
Глава 14. Обработка ошибок |
Синтаксические ошибки
Ошибки в логике программы
Ошибки времени выполнения (Run-Time Error)
Инструменты для определения ошибок
Обработка ошибочных ситуаций
Стандартный обработчик ошибок
Команда ON ERROR
Конструкция TRY... CATCH... FINALLY
Coverage Profile |
|
Глава 15. Операции с файлами |
Импорт данных
Диалог Import
Мастер импорта
данных
Команда Import
From
Команда Append
From
Экспорт данных
Диалоговое окно
Export
Команда Export To
Команда Copy To
Копирование и удаление файлов
Использование функции ALINES()
Низкоуровневый доступ к файлам
Открытие и
закрытие файлов
Работа с файлами
последовательного доступа
Работа с двоичными
файлами
Обработка ошибок
Изменение размера
файла
Проверка наличия файла и даты изменения
Структура таблиц формата DBF
Заголовок таблицы
Блоки записей
таблицы
Изменение кодовой
страницы
Редактор файлов HexEdit
Специальные таблицы Visual FoxPro |
|
Глава 16. Технология COM |
Введение в технологию COM
Процессы и потоки
Идентификаторы
Информация о COM-объектах
в реестре Windows
Интерфейсы
Раннее и позднее
связывание в COM
Среда Visual
FoxPro и поддержка COM
Программное создание COM-сервера
Информация о
классе в Object Browser
Тестирование COM-сервера
vfpserver
Особенности
объявления COM-класса в Visual FoxPro
Выбор базового
класса для создания COM-класса
Работа с массивами
Обработка ошибок
Региональные
настройки
Создание COM-класса в Конструкторе классов
Тестирование:
клиент на Visual FoxPro
Тестирование:
клиент — Microsoft Excel
Окончательная
доработка приложения VfpTextEdit
Сокрытие "лишних"
методов и свойств
Распределенные приложения
Распределенные COM
(DCOM)
Приложения COM+
Регистрация COM-серверов |
|
Глава 17. Автоматизация MS Office |
Введение в Microsoft Office
Объекты
Использование
раннего связывания
Объекты-коллекции
Макросы
Определение
значений констант
Константы
Microsoft Office
Автоматизация Microsoft Excel
Объектная модель
Microsoft Excel
Оформление отчетов
Формирование
отчетов
Уменьшение времени
формирования отчета
Печать
Уничтожение
объекта Microsoft Excel
Автоматизация Microsoft Word
Объектная модель
Microsoft Word |
|
Глава 18. Компоненты ActiveX |
Общие сведения об использовании компонентов
Выбор и размещение
компонента на форме
Лицензирование
Интерактивная
установка свойств компонента
Компонент ProgressBar
Компонент Slider
Компонент RichText
Свойства
Свойства типа
SelXXX
Методы
Контекстное меню
RichText
Работа с буфером
обмена
Форматирование
RTF-документа
Компонент Web Browser
Метод Navigate2
Окно справки,
использующее Web Browser
Интерактивные
отчеты в Web Browser
Другие методы
компонента Web Browser
Функция SYS(2333) |
|
Глава 19. Windows API |
Введение в Windows API
Объявление функций
Windows API в Visual FoxPro
Базовые типы
данных в С++
Типы данных
Windows
Указатели
Структуры
Прототипы функций
MSDN как источник
информации о прототипах функций
Формирование
структур в Visual FoxPro
Передача массивов
в функцию Windows API
Форматы символьных
данных ANSI и Unicode
Многократное
объявление функций Windows API
Удаление
зарегистрированных функций
Распределение памяти для структур с указателями
Распределение
памяти Windows
Распределение
памяти внутри процесса
Работа с
указателями в Visual FoxPro
Освобождение
распределенной памяти
Применение функций Windows API |
|
Глава 20. Работа с Реестром Windows |
Структура реестра
Использование функций Windows API
Открытие ключа
реестра
Чтение значений
ключа
Закрытие ключа и
сохранение реестра
Пример чтения
информации из реестра
Создание ключа
Запись и удаление
значений ключа
Другие API-функции
для работы с реестром Windows
Использование Windows Scripting Host
Создание разделов
и запись значений ключей реестра
Чтение информации
из реестра
Удаление
информации из реестра
Изменение значения
ключа
Дополнительные возможности объекта WshShell
Запуск приложения
Имитация нажатия
клавиш клавиатуры
Просмотр значений
переменных окружения Windows |
|
Глава 21. Применение GDI+ |
Введение в GDIPlus
Векторная и
растровая графика
Форматы
графических файлов
Инициализация и
завершение GDIPlus
Объектная модель
GDIPlus
Поддержка формата
Unicode
Обработка ошибок
Класс VFPGdiplus
Загрузка, сохранение и удаление изображений
Загрузка
изображения из файла.
Сохранение
изображения в файле
Загрузка
изображения из поля таблицы или переменной
Сохранение
изображения в переменной (в поле таблицы)
Использование
буфера обмена Windows
Информация об изображении
Определение
размеров растра
Определение
разрешения растра
Определение
графического формата изображения
Операции над изображениями
Поворот и
отражение изображения
Отсекание
прямоугольного фрагмента изображения
Создание растра
Форматы пикселов
Объект Graphics,
связанный с растром
Изменение размеров
изображения
Обзор функций для копирования изображений |
|
Глава 22. Рисование в GDI+ |
Цвета, единицы измерения и координаты
Концепция цвета и
прозрачности. Метод ARGB
Использование
различных единиц измерения
Система координат
Инструментарий
Перья
Кисти
Графические примитивы
Антиалиасинг
Прямые и ломаные
линии
Сплайны
Прямоугольники
Многоугольники
Окружности и
эллипсы
Сектора и дуги
Рисование текстовых строк
Объекты FontFamily
и Font
Управление
качеством отображения символов
Определение длины
текстовой строки
Форматирование
текста
Рисование изображений |
|
Глава 23. Графический вывод в GDI+ |
Печать на принтере
Создание
графического контекста принтера
Создание
связанного с принтером объекта Graphics
Определение
размера листа принтера
Документ принтера
Класс для печати
на принтере
Рисование в окне формы
Определение "правильного"
HWnd
Перехват оконных
сообщений
Создание
связанного с окном объекта Graphics
Форма для
рисования
Класс для
рисования в окне формы
Динамическое отображение диаграмм
Применение GDIPlus в отчетах
События, методы и
свойства объекта ReportListener
Создание отчета
Процедура запуска
отчета
Координатные преобразования
Манипуляции с цветом
Объект
ImageAttributes
Пример
корректировки цветовой гаммы изображения
Еще несколько функций GDIPlus...
Перо, рисующее
кистью
Изменение вида
начала или конца линии
Изменение и
установка цвета пикселов
Обзор классов
Класс GdipImages
Класс GdipPrinter
Класс GdipWindow |
|
Глава 24. Мультимедиа |
Запись и воспроизведение WAV-файлов
Запись звукового
файла
Воспроизведение
звукового файла
Воспроизведение
стандартных звуков Windows
Интерфейс управления мультимедиа (MCI)
Команды MCI
Особенности вывода
видео на форме
Класс для
управления MCI
Проигрыватель
звуковых файлов
Проигрыватель
видеофайлов
Microsoft Agent
Объектная модель
Microsoft Agent
Коллекция
персонажей Characters
Объект Character (персонаж)
Управление
анимацией. Объект Request
Управление
воспроизведением речи
Объект Balloon
Объект AudioOutput
ActiveX-компонент
Microsoft Agent
Использование
Ассистентов Microsoft Office 2003
Обработка ошибок
Microsoft Agent |
|
Глава 25. Описание демо-проекта (делопроизводство) |
Постановка задачи
Определение языка программирования, создание структур для
хранения данных
Определение состава проекта
Разработка главного модуля приложения
Разработка меню
Разработка форм
Файл помощи |
|
Глава 26. Разработка справочной документации |
Строка состояния
Справка в формате "What's This?" ("Что это?")
Диалоговые окна
Описание работы с HTML Help Workshop
Создание тем
справочной системы
Содержание
Предметный
указатель
Определение ссылок
на фрагменты справки в свойствах HelpID объектов
Определение
псевдонимов тем
Определение
параметров проекта справочной системы
Компиляция и
тестирование справочной системы
Команды Visual
FoxPro для управления справочной системой
Формирование файла
проекта справочной системы |
|
Глава 27. Распространение приложений |
Введение в InstallShield Express
Установка InstallShield Express
Запуск InstallShield Express
Создание дистрибутива приложения
Общие установки
Спецификация
данных приложения
Вставка пункта в
меню Пуск и иконки приложения
Определения набора
диалогов Мастера установки
Определение
требований к среде выполнения
Сборка
дистрибутива
Редактирование дистрибутива приложения |
|
Глава 28. Полезные советы |
1. Как изменить кодовую страницу
таблицы?
2. Как прочитать список файлов, расположенных в одном
каталоге?
3. Вы хотите закрыть свой проект от взлома, хотя бы от не
очень компетентных людей
4. Вы хотите ввести пароль и зашифровать его
5. Вы хотите, чтобы Ваше приложение запускалось только один
раз на каждом компьютере
6. Как вычислить определенные даты
7. Как сделать всплывающую подсказку.
8. Как работать с INI-файлами?
9. Как сделать ссылку?
10. Как <прикрепить> созданную вами иконку к проекту?
11. Как организовать ProgressBar? ("градусник","термометр")
12. Обновление версий
13. Преобразовать "Сидоров Василий
Иванович" в "Сидоров" "Василий" "Иванович"
14. Анимированная иконка
15. Как создать задание на SQL-Server?
16. Как запустить архиватор arj из VFP, чтобы он при запуске
не мелькал на экране?
17. Как определить серийный номер жесткого диска?
18. Отображение текста на форме в
виде бегущей строки
19. Создание каталога для отчетов и создание ссылки на него
на рабочем столе пользователя
20. Определение информации о дисках компьютера
21. Создание <на лету> группы кнопок или переключателей (из
таблицы)
22. При нажатии клавиши Enter первая колонка Grid скрывается
за границу Grid
23. Контекстный поиск в Grid
24. Информирование пользователя о выполнении какого-либо
процесса
25. Как вернуть название месяца по его номеру
26. Как выгрузить неактивную программу у пользователей
27. Как разместить на форме часы
28. Как заставить цифровую клавиатуру отображать точку при
любой раскладке (Ru/En)
29. Как заменить сообщение "Invalid Date" при вводе
некорректной даты
30. Как получить программный код создания структуры базы
данных
31. Как перенести данные из текстового файла в таблицу
32. Получение данных об установленных программных продуктах
33. Из какой папки
запущена программа (EXE-файл)
34. VFP +
Internet Explorer
35. Связь VFP и Lotus Notes |
|
Приложения |
1. Установка и настройка Visual
FoxPro
2. Перечень команд типа SET
3. Справочник по встроенным функциям
Visual FoxPro
4. Свойства и методы объектов
Visual FoxPro
5. Содержание компакт-диска |
|