От издательства

Напутствие читателям серии «КомпАс»

Введение
Мы изучаем Delphi
Почему нам нравится программирование?
Что это — Delphi?
Как работать с этой книгой?
Что читать дальше
Благодарности от автора
Памятка начинающему программисту

Глава 1. Первое знакомство с Delphi
Система программирования Delphi - родственница Windows
Где хранить свои программы?
Если в системе Delphi можно делать то же самое, что и в Windows, то зачем она нужна?
Мастера узнают по его инструментам
Первое знакомство с формой
Знакомство с модулем Unit1
Откуда в модуле Unit1 взялись какие-то программы, если мы еще ничего не писали?
Что это за программы в модуле Unit1? Ведь проект еще ничего не делает?
Запуск программы и прекращение ее работы
Ну вот — все Delphi и Delphi! Когда же, наконец, мы сами что-нибудь напишет?
Первое знакомство с компонентами
Изменение свойств объекта в ходе выполнения программы
Комментарий
Ошибка, я тебя знаю!
Сохраняем проект
Что делать, если рядом нет учителя?
Спасительная кнопка F1
Подсказчик Code Completion (Завершение кода)

Глава 2. Логические конструкции
Оператор if...then
Выделение слов в редакторе кода
Когда нужно писать большие буквы, а когда маленькие?
Как располагать строки в программе?
Что означает слово div в нашей программе?
Контроль типов в Delphi
Неужели система Delphi не умеет округлять числа?
Логические операции
Простейшие «косметические» средства компонентов
Замечательное изобретение — буфер!
Перебрасываем мостик

Глава 3. Организация простейшего диалога
Создаем собеседника
Сценарий диалога «А я...»
Одноступенчатый диалог
Почему «Томагочи» не реагирует на фразу «привет!»?
Почему «Томагочи» не реагирует на фразу «Привет»?
Как сделать так, чтобы фраза «Пррриветик!» не застревала во рту «Томагочи»?
Дальнейшее совершенствование программы
Раздел описания переменных
Как проверить, содержит ли фраза заданное слово?
Двухступенчатый диалог
Локальные и глобальные переменные программы

Глава 4. Программируем неожиданность
Эксперимент «Гадалка»
Функция StrTolnt
Что делать, если возникла аварийная остановка программы?
Оператор выбора
Операция mod
«Я ввел целое число, а программа сломалась. Почему?»
Случайные числа
Настройка генератора random
Случайные цвета
Случайные фразы

Глава 5. Учим «Томагочи» считать
Операции с целыми числами
Вещественные типы в Delphi
Функция преобразования типов Val
Специальные меры защиты кода
Некоторые стандартные функции языка
А как возвести число в степень?

Глава 6. Наш первый продукт: «Математическая пилюля»
Эксперимент «Математическая пилюля»
Подбираем задачу
Создаем интерфейс
Анализируем исходные числовые данные
Генерируем условия
Обработка ответа
Как устранять несогласованность окончаний?
Как сообщение «от компьютера» сделать более корректным
Добавляем информацию об авторе
Создание дополнительной формы проекта
Содержание формы «Об авторе»
Подключение дополнительной формы к проекту
Подчищаем «мелочи»
Дополнительные возможности отладки
Множества в языке Pascal

Глава 7. Дизайн проекта
Многоликий курсор
Как создать собственный курсор
Как нарисовать курсор
Как присоединить курсор к своему проекту
Работаем с регионами
Мини-мультфильм
Оператор with
Цифровой фильм
Как показывать видеофайл в определенном месте формы?
Как скрыть универсальный проигрыватель?
Как показывать фильм без его предварительного поиска ?
Подручные средства Delphi
Технология перетаскивания
Можно ли замаскировать объект класса Tlmage под объект класса TShape?
Почему перетаскиваемая кнопка не реагирует на событие OnClick?
Рисуем мышью в форме
Как сохранять картинки?
Настройка цвета

Глава 8. Циклы
Средняя оценка за полугодие
Оператор for
Частокол из прямоугольников
Тип Прямоугольник в языке Object Pascal
Решаем цифровой ребус
Как узнать время выполнения некоторого фрагмента программы?
«Лягушка с вращающимися глазами»
Инструменты Canvas для изображения эллиптических элементов
Программа для составления кроссвордов

Глава 9. Математика + информатика = искусство
«Числовой космос» Александра Александровича Зенкина
«Танец маленьких чисел»
«Скатерть» Улама
Процедуры и функции в языке Pascal
Чем функция отличается от процедуры?
Два способа передачи фактических параметров
Закрашивание пиксела
Метод ProcessMessages
Оператор безусловного перехода goto
Алгоритм «Стежок»
Пируэты окружности
Узоры из «инфузорий»

Глава 10. Секреты «быстрой» графики
Растровые рисунки
Как читать шестнадцатеричные числа?
Рисуем в форме
Рисуем в оперативной памяти
Функция ScanLine
Логические операции с цветом
Режим пера pmNotXor

Глава 11. Создаем базу данных
Как проектировались базы данных раньше
Тип record (запись)
Процедуры и функции для работы с файлами в языке Object Pasca!
Как создать новый файл
Открытие и закрытие существующего файла
Чтение и запись информации
Перемещения по файлу
Проектируем форму
Проектируем начальные действия
Проектируем прекращение исполнения проекта
Проектируем добавление в файл новых записей
Чтение данных из файла
Удаление записи из файла
Как проектируются базы данных сейчас
Инструмент Database Desktop
Инструмент Database Form Wizard

Глава 12. Динамические структуры данных
Указатели
Динамические списки
Как добавить новое звено в список?
Как удалить звено из списка?
Как создать список?
Как добавить новое звено в список?
Как удалить звено из списка?
Как удалить все звенья списка?

Глава 13. Delphi и Интернет
Как организовать ссылку на ресурс Интернета
Как организовать связь между компьютерами

Глава 14. Прелюдия творчества
Идей связующая нить
Связи формул
Логический вывод
Моделирование человеческих рассуждений
Аксиома доброты
Последний аккорд

Приложение. Как? Что? Почему?
Работа с проектом
Конструирование формы
Некоторые приемы редактирования
Клавиши быстрого управления, используемые при отладке программ

Алфавитный указатель