Книга, написанная тремя экспертами по Delphi, представляет собой одно из лучших изложений этой принципиально новой среды разработки Windows-приложений. Читатель найдет в ней уникальное толкование объектно-ориентированного программирования. В книге приводятся пошаговые инструкции по созданию коммерческих приложений, использующих базы данных.
Название: Программирование в среде Delphi Автор: Джефф Датеманн, Джим Мишел, Дон Тейлор Издательство: ДиаСофт Год: 1995 Страниц: 607 Формат: DJVU Размер: 21,7 МБ ISBN: 5-7707-9149-7 Качество: Отличное
Содержание:
ВВЕДЕНИЕ ЧАСТЬ 1: ДОМАШНЕЕ ХОЗЯЙСТВО DELPHI Глава 1: ПУТИ RAD! ПОДБОР ИНСТРУМЕНТАЛЬНЫХ СРЕДСТВ DELPHI Главное окно Окно инспектора объектов Окно формы Окно модуля Роль кода в Delphi Помещение компонента в форму Помещение множества компонет одного и того же типа Перемещение и изменение размеров компонентов Выравнивание компонентов Сохранение результатов вашей работы Выполнение программы ИЗМЕНЕНИЕ СВОЙСТВ ОБЪЕКТОВ Улучшение формы Реакция на события СЕЗАМ ОТКРЫЛСЯ! ВЫ - ПРОГРАММИСТ! Глава 2: ДЕЙСТВИТЕЛЬНО ЛИ ЭТО ПРОГРАММИРОВАНИЕ? ФОРМЫ DELPHI ВСЕ ВЕЩИ, ВИДИМЫЕ И НЕВИДИМЫЕ Стимул и отклик Ваши собственные библиотеки кода Как много будет программирования? Построение ваших собственных компонентов в Delphi Подход усредненного мышления к Pascal "Большое мышление "в сравнении с "малым мышлением" "Усредненное мышление" и вопросы границ Delphi как среда "усредненного мышления" ДА, ЭТО ДЕЙСТВИТЕЛЬНО ПРОГРАММИРОВАНИЕ! Глава 3: КОМПОНЕНТЫ И ИХ СВОЙСТВА ПОНИМАНИЕ СВОЙСТВ КОМПОНЕНТОВ КОМПОНЕНТ ФОРМЫ Изменение размера и позиции формы Изменение рамки формы Изменение цветов "на лету" МНОЖЕСТВА И ОБЪЕКТЫ В КАЧЕСТВЕ СВОЙСТВ Свойство Borderlcons Свойство Шрифт НАСЛЕДОВАНИЕ РОДИТЕЛЬСКИХ СВОЙСТВ ParentCtr3D, ParentColor, ParentFont OnCreate: Установка свойств компонента при запуске Свойства времени выполнения и свойства только-для-чтения Реакция на изменение цвета Управление контрольным окном Сохранение и выполнение программы УПРАВЛЕНИЕ СВОЙСТВАМИ Глава 4: ВСЕ, ЧТО У ВАС ЕСТЬ И МЕСТО, КУДА ЭТО СЛОЖИТЬ ПЕРЕМЕННЫЕ - ЕМКОСТИ ДЛЯ ДАННЫХ Переменные и их типы Построение емкостей Заполнение емкостей Литеральные константы Поименованные константы ДРУГИЕ ЧИСЛОВЫЕ ТИПЫ Длинные целые Значения с плавающей точкой АРИФМЕТИЧЕСКИЕ ОПЕРАЦИИ ВЫРАЖЕНИЯ Смешивание целых значений и значений с плавающей точкой Деление Целочисленное деление с Mod и Div Comp: таинственный числовой тип СИМВОЛЫ Перечислимые типы СТАНДАРТНЫЕ ФУНКЦИИ КОММЕНТАРИИ СТРОКИ ЛОГИЧЕСКИЕ ИСТИНА И ЛОЖЬ Логические значения и операции отношения Логические значения и оператор IF Составные операторы ОСНОВЫ OBJECT PASCAL Глава 5: ВИЗУАЛЬНЫЕ И НЕВИЗУАЛЬНЫЕ КОМПОНЕНТЫ ТАЙМЕР Установка интервала Размещение компонентов Копирование и вставка компонента Запоминание времени Инициализация счетчика тиков Проверка формы СЕКУНДОМЕР, ЭТАП II Запуск и остановка таймера Подсчет интервалов Сброс часов Конечный Продукт МЕНЮ Построение меню с помощью Menu Designer Добавление элементов меню Добавление и удаление элементов меню Добавление "горячих"клавиш Сделать меню работающим Выполнение программы О меню в дальнейшем ОБЩИЕ ОКНА ДИАЛОГА Всплывающее меню Использование общих диалогов Компонент FontDialog Свойства FontDialog События FontDialog Компонент ColorDialog Свойства ColorDialog РАЗМЕЩЕНИЕ НЕВИЗУЛЬНЫХ КОМПОНЕНТОВ Следующие шаги Глава 6: ДАННЫЕ, ВСЮДУ ДАННЫЕ ОПРЕДЕЛЕНИЕ ВАШИХ СОБСТВЕННЫХ ТИПОВ ДАННЫХ Перечислимые типы Но зачем нужны перечислимые типы? Поддиапазоны и закрытые интервалы INC, DEC И ИТЕРАЦИЯ Succ и Pred Ошибки выхода за границы диапазона и контроль этих границ Оператор FOR ФОРМАТИРОВАНИЕ ОТОБРАЖЕНИЯ Округление для отображения МАССИВЫ Границы массива и доступ к массиву Добавление размерности ЗАПИСИ Квалификаторы записи и WITH МОДЕЛИРОВАНИЕ СЛОЖНЫХ ДАННЫХ Моделирование последовательным уточнением Проблема емкости Типы, производные от типа String ЧАСТЬ 2: УГЛУБЛЯЯСЬ ДАЛЬШЕ В ПОЛЕ Глава 7: ФОРМЫ И МОДУЛИ МНОГО-ДОКУМЕНТНЫЙ ИНТЕРФЕЙС Создание главной формы приложения Добавление меню Использование компонента OpenDialog ПРОСМОТР ТЕКСТОВЫХ ФАЙЛОВ Галерея Формы и модули Построение формы просмотра текстов Склеивая все вместе Закрытие дочерних окон Модификация исходного файла проекта МЕНЮ ДОЧЕРНЕГО ОКНА Соединение меню Вызов родительской формы ПЕЧАТЬ ТЕКСТА Получение готовности к печати ПРОСМОТР РИСУНКОВ Форма просмотрщика рисунков Компонент Image Модификация главной формы Меню просмотрщика рисунков ПЕЧАТЬ РИСУНКОВ ДАЛЬНЕЙШЕЕ ИЗУЧЕНИЕ Глава 8: МОДУЛИ И ОБЪЕКТЫ ВЕЛИКОЕ ПРОТИВОПОСТАВЛЕНИЕ Пакеты вычисления Модели: пакеты пакетов ИСПОЛЬЗУЕМЫЕ ИНСТРУМЕНТАЛЬНЫЕ СРЕДСТВА Раздел интерфейса Использование кода и данных, хранящихся в модулях Раздел реализации РЕАЛИЗАЦИЯ "МЕХАНИЗМА ОБРАБОТКИ" ЗАКЛАДНЫХ Recalc Две магические функции: ЕХР и LN Видимое и скрытое Присоединение Интерфейса Пользователя к основывающемуся на модуле "механизму обработки " Использование компонента StringGrid Загрузка клеток в StringGrid ОТ ЗАПИСЕЙ К ОБЪЕКТАМ Код и данные, объединенные вместе Активные данные МОДУЛИ И ОБЪЕКТЫ Видимость в модулях и объектах СОЗДАНИЕ НАСЛЕДОВАНИЯ Создание объектов Уничтожение объектов ОБЪЕКТНО-ОРИЕНТИРОВАННЫЙ "МЕХАНИЗМ ОБРАБОТКИ" ЗАКЛАДНОЙ Использование объекта TList в Delphi Имена, указатели и экземпляры объекта ОПЫТ РАБОТЫ С ОБЪЕКТАМИ Глава 9: DELPHI И ОКНА ДИАЛОГА ПРОГРАММИРОВАНИЕ В ОКНАХ Главная форма Компонент Panel Быстрые кнопки Завершение формы Запуск на выполнение и выход ДОБАВЛЕНИЕ ПИКТОГРАММЫ ПРОГРАММЫ ОСНОВЫ СОЗДАНИЯ ОКОН ДИАЛОГА Простое окно диалога "About"("О... ") Созданиеулучшеннного окна диалога "О..." Закрытие модальных окон диалога Кнопки и BitBtns Отображение нового окна диалога "О..." ДИАЛОГОВОЕ ОКНО "НОВАЯ ЗАКЛАДНАЯ" Создание формы диалогов Делаем все работающим Получение доступа к окну диалога Новая закладная ИЗМЕНЕНИЕ РАЗМЕРОВ СЕТКИ ЗАКЛАДНОЙ ДОПОЛНИТЕЛЬНЫЙ КАПИТАЛ Форма Дополнительный капитал (Extra Principal) Реконфшурирование окна диалога "налету"в качестве отклика на ввод Функция Execute Применение окна диалога Дополнительный капитал EXIT И CASE Оператор case ИСКЛЮЧЕНИЕ ДУБЛИРОВАНИЯ КОДА Выявление и инкапсуляция дублируемого кода МОДАЛЬНОСТЬ ИЛИ НЕМОДАЛЬНОСТЬ? ДВИГАЯСЬ ДАЛЬШЕ Глава 10: НАШ ОБЪЕКТ - СПЛОШНАЯ ВЕЛИЧЕСТВЕННОСТЬ УЧИТЬСЯ И РАЗУЧИВАТЬСЯ ИНКАПСУЛЯЦИЯ REDUX Данные во весь голос Центр внимания - данные Вопрос масштаба СОЗДАНИЕ НАСЛЕДОВАНИЯ Общие и не общие предки ГРАНДИОЗНЫЙ ПРОЕКТ От абстрактного к специфическому Абстрактные классы как отправные точки Ваши классы самые специфические Созерцай грандиозный проект! НЕОБХОДИМОСТЬ ЗАМЕНЫ ПОЛИФОРМИЗМ: ДЕЛАЮЩИЙ ВСЕ ПО-СВОЕМУ "Теперь жатва вашего урожая!" Обобщенные инструкции, специфические результаты Идеи и их реализация Указатели и маски Параметр Sender Полиморфное присваивание Полиморфное выполнение ПОЛИМОРФИЗМ И ГРАНДИОЗНЫЙ ПРОЕКТ Глава 11: ФАЙЛЫ И ТИПЫ ФАЙЛОВ ТЕКСТОВЫЕ ФАЙЛЫ Открытие текстовых файлов Закрытие текстовых файлов Запись текстовых файлов Специфицирование ширины поля Специфицирование десятичной точки Чтение текстовых файлов Конец строки и конец файла ЧТО ЭТО ЗА ШТУКА "WHILE"? КРАТКИЕ ИТОГИ ОТНОСИТЕЛЬНО ТЕКСТОВЫХ ФАЙЛОВ ФАЙЛЫ ЗАПИСЕЙ Открытие и закрытие файлов записей Переменная FileMode Запись и считывание записей Указатель файла и номера записей Перемещение и проверка указателя файла ОСНОВНАЯ ФОРМА ComboBoxes Завершение формы Как она работает Значения, разделенные запятыми Модуль Almstats КОНЕЦ ФАЙЛА Глава 12: ТОЧКИ СВЕТА, ПЯТНА НА БУМАГЕ ДЕКАРТОВО ПОЛОТНО Делаем ударение на положительном, но с небольшим отклонением ПОЛОТНО КАК ОБЪЕКТ Полотно точек растра РИСОВАНИЕ ЛИНИИ Создание полотна Трата времени с шириной и стилем линии Простые фигуры Ограничивающие прямоугольники Прямоугольники с закругленными углами Эллипсы Ломаные линии и многоугольники Параметры открытого массива ПЕЧАТЬ ГРАФИКИ Механизм печати Что за принтер и насколько велико его полотно? Портрет или пейзаж? Печать многих листов ДЕМОНСТРАЦИОННАЯ ГРАФИКА: ЦИКЛОИДНЫЕ КРИВЫЕ Вращение циклоид Печать текста РИСОВАНИЕ И ПЕРЕРИСОВЫВАНИЕ УЛУЧШЕНИЯ ДЛЯ SPIROMANIA Глава 13: СОЗДАНИЕ ПРОСТЫХ ПРИЛОЖЕНИЙ БАЗ ДАННЫХ ОДНОУРОВНЕВЫЙ ФАЙЛ - ПРОСТЕЙШИЙ ПУТЬ К БАЗАМ ДАННЫХ Три компонента, никакого кода Установка свойств Порядок имеет знамение! Запуск программы Построение формы ПЕРЕМЕЩЕНИЯ ПРИ ПОМОЩИ DBNAVIGATOR Настройка компонента DBNavigator в соответствии с потребностями пользователя Замечание по поводу ошибок баз данных ВЕДУЩЕ-ДЕ1АЛИЗИРОВАННЫЕ БАЗЫ ДАННЫХ Взаимосвязи одного со многими Добавление сетки Articles Компонент Bevel Подвешивание таблиц Запуск программы Возможные усовершенствования БАЗЫ ДАННЫХ БЕЗ КОДА Глава 14: ТАБЛИЦЫ ДЛЯ ЗАПИСЕЙ ЗАПИСИ НА СТЕРОИДЕ ЖАРГОН БАЗ ДАННЫХ Различные форматы баз данных БАЗА ДАННЫХ DESKTOP Исполъзоваше dbd для сопровождения таблиц Структура и реструктурирование СОЗДАНИЕ НОВЫХ ТАБЛИЦ Ключевые поля ВТОРИЧНЫЕ ИНДЕКСЫ МАШИНА БАЗ ДАННЫХ В DELPHI Основное направление в Delphi для Database Desktop Таблица: компонент Linchpin Поля: невидимая армия Источники данных и чувствительные к данным компоненты УСТАНОВКА ДОСТУПА К ДАННЫМ ПРОГРАММИРУЕМЫЙ ДОСТУП К БАЗЕ ДАННЫХ Передвижение от записи к записи Поля по имени или по номеру Проверка полей Установка пшей во время выполнения ПОИСК ТАБЛИЦЫ Значения ключа и индекса при проведении поиска Использование дм поиска метода Find Неполный поиск с GotoNearest и FindNearest ИЗМЕНЕНИЕ ДАННЫХ В СУЩЕСТВУЮЩИХ ЗАПИСЯХ Редактирование и метод Post Оператор TRY... FINALLY для защиты от исключительных ситуаций Методы, не являющиеся обработчиками событий ВСТАВКА И УДАЛЕНИЕ ЗАПИСЕЙ Вставка, произведенная по частям Вставка записи одним оператором ЭТО ЕЩЕ НЕ ВСЕ! ЧАСТЬ 3: ПРИКЛЮЧЕНИЯ ЭЙСА БРЕИКПОИНТА С ЕГО БАЗАМИ ДАННЫХ Глава 15: ПРОГРАММИРОВАНИЕ - МОЕ РЕМЕСЛО КРАТКИЙ СЮЖЕТ BOXLIGHT В СЕВЕРО-ЗАПАДНОМ ТИХООКЕАНСКОМ СООБЩЕСТВЕ Глава 16: ПРЕПАРИРОВАНИЕ ТЕЛА КАРТЫ НА СТОЛЕ В норвежском ресторане ВОКРУГ ТАБЛИЦ Таблица 1. Customers (Покупатели) Таблица 2. Vendors (Поставщики) Таблица 3. Employees (Служащие) Таблица 4. Generic Tips (Общая информация) Таблица 5. Products (Продукты) Таблица 6. Invoices (Счета) Таблица 7. Invoices Items (Компоненты счета) Таблица 8. RMA (Коды гарантийного ремонта) СОЗДАНИЕ И ЗАПОЛНЕНИЕ ТАБЛИЦ ДАННЫХ Создание быстрого чернового варианта утилиты Создание быстрого чернового варианта утилиты Глава 17: ЭТО СЛУЧИЛОСЬ В БИБЛИОТЕКЕ ШАГ 1: ОПРЕДЕЛЕНИЕ ОБЛАСТИ ДЕЙСТВИЯ ПРИЛОЖЕНИЯ ШАГ 2: РАЗДЕЛЕНИЕ ПРИЛОЖЕНИЯ НА ФУНКЦИОНАЛЬНЫЕ ФРАГМЕНТЫ ШАГ 3: РАЗРАБОТКА ГРУБОГО МАКЕТА ПРИЛОЖЕНИЯ Выбор каталога для проекта Изменение имени для защиты невиновных Создание нового проекта Построение чернового варианта формы Product Information Построение чернового варианта формы RMA Management Папочка, откуда берутся RMA ПОСТРОЕНИЕ ЧЕРНОВОГО ВАРИАНТА ФОРМЫ ВВОДА RMA НАЗАД, К ФОРМЕ ВВОДА RMA ДАЛЬНЕЙШИЕ РАЗМЫШЛЕНИЯ Глава 18: ОБОЗНАЧЕНИЕ НЕСКОЛЬКИХ НЕОТЛОЖНЫХ СВОЙСТВ ШАГ 4: УСТАНОВКА СВОЙСТВ КАЖДОГО КОМПОНЕНТА МОДИФИКАЦИЯ ФОРМЫ MAIN МОДИФИКАЦИЯ ФОРМЫ Product Information МОДИФИКАЦИЯ ФОРМЫ RMA Management МОДИФИКАЦИЯ ФОРМЫ RMA Input ПЕРВАЯ КОМПИЛЯЦИЯ И ВЫПОЛНЕНИЕ Глава 19: СТРАННЫЙ ПОВОРОТ СОБЫТИЙ ШАГ 5: СОЗДАНИЕ ОБРАБОТЧИКОВ СОБЫТИЙ Добавление обработки событий к форме Main Дополнение формы Product Information обработкой событий Формы RMA - первая попытка ФОРМЫ RMA - ВТОРАЯ ПОПЫТКА Получение номера следующего RMA и даты Получение всего того, что связано со счетом в записи Добавление информации из окна комбинированного списка Переход к специфицированным записям RMA и счета Помещение инициалов в комбинированный список Помещение в комбинированный список сообщений состояния Окончание работы с формой RMA Input Окончание работы с формой RMA Management Две новых подпрограммы Обработчик события для кнопки Delete ЧИСТОСЕРДЕЧНОЕ ПРИЗНАНИЕ Глава 20: ВОЗВРАЩЕНИЕ НА СЦЕНУ ШАГИ 6 И 7: СОЗДАНИЕ НОВОГО КОДА И УСОВЕРШЕНСТВОВАНИЕ РАБОТЫ ДЕМОНСТРАЦИОННОГО ПРИМЕРА Завершение формы RMA Input Обновление даты Добавление инициалов в комбинированный список Поиск счетов ФОРМАТИРОВАНИЕ НОМЕРОВ RMA УЛУЧШЕНИЕ СООБЩЕНИЙ О СТАТУСЕ УЛУЧШЕНИЕ ВНЕШНЕГО ВИДА Это чувство пустоты УЛУЧШЕНИЕ ФОРМЫ RMA MANAGEMENT Поиск RMA по номеру Подтверждение запроса на удаление Включение и выключение кнопок Объединение констант сообщений о статусе Улучшение внешнего вида формы Корректировка главной формы ПРИНЯТИЕ РЕШЕНИЯ Глава 21: ПРОБЛЕМА ВЕЩЕСТВЕННЫХ ДОКАЗАТЕЛЬСТВ ПОЧЕМУ ReportSmrth? Планирование отчета Создание соединений Заполнение таблицы RMA СОЗДАНИЕ ОТЧЕТА Ограничение отчета активными RMA Использование реальных имен покупателей Добавление сообщений о статусе Улучшение внешнего вида отчета Улучшение внешнего вида заголовка страницы ПРИСОЕДИНЕНИЕ ОТЧЕТА К ДЕМОНСТРАЦИОННОМУ ПРИМЕРУ ОТЧЕТ О МОЕМ СОБСТВЕННОМ СОСТОЯНИИ Глава 22: ПОДСКАЗКА ПОСПЕВАЕТ ВОВРЕМЯ АНАТОМИЯ ФАЙЛА ПОДСКАЗКИ Процесс создания файла подсказки Опять все сначала УСТАНОВКА HELPGEN Обзор HelpGen Определение проекта Создание файла проекта по умолчанию Тестовый прогон Изучение синтаксиса макроопределений А теперь все вместе ПРИСОЕДИНЕНИЕ К ДЕМОНСТРАЦИОННОМУ ПРИМЕРУ ДОБАВЛЕНИЕ ОКНА "О..." ЗАКЛЮЧИТЕЛЬНЫЙ ПОДХОД Эпилог: ЭЙС СМОТРИТ В БУДУЩЕЕ Приложение А: ПЕРСПЕКТИВА DELPHI ДЛЯ ПОЛЬЗОВАТЕЛЕЙ VB (Visual Basic) ОБ АВТОРАХ