ПРОГРАММИРОВАНИЕ КОНСОЛЬНЫХ ПРИЛОЖЕНИЙ НА DELPHI

Сергей Гаврилов

Интерес к написанию консольных приложений Win32 довольно устойчив. Эти компактные и шустрые программки чем-то удивительно симпатичны. А в ряде случаев консольный режим вообще незаменим.

В условиях отсутствия доступных справочных материалов - это сочинение, возможно, поможет начинающему программисту "текстового экрана" на Delphi. Заодно оно послужит полезным пособием по пользованию функциями Windows API и по объектному программированию.

Читатель найдет здесь подробное изложение следующих групп вопросов:

1) как правильно создать структуру приложения на Delphi, не используя VCL, как принимать, обрабатывать и генерировать сообщения;

2) как инициализировать и настроить консоль, как организовать ввод-вывод с помощью Windows API;

3) как создать оконный интерфейс, не используя классы, как разработать и использовать библиотеку оконных объектных типов.

© Данное пособие является предметом авторского права. Копирование и издание в любой форме - только с разрешения автора.
Не возбраняется присылать отзывы и информацию об опечатках. Возможен заказ в виде брошюры.


Начать чтение

Содержание

Введение. Delphi без VCL

ЧАСТЬ 1. СТРУКТУРЫ И ИНТЕРФЕЙСЫ КОНСОЛЕЙ

1.1. Windows: система и приложения

1.1.1. Hello World

1.1.2. Программы для DOS и для Windows

1.1.3. Процессы и потоки

1.1.4. Создание потока

1.1.5. Завершение потока

1.1.6. Сообщения

1.1.7. Отправка и прием сообщений

1.1.8. Оконная функция

1.1.9. Сообщения окнам и сообщения потокам

1.1.10. Обработка сообщений в консольной программе

1.2. Общие сведения о консольном интерфейсе

1.2.1. Консоль

1.2.2. Параметры консольных программ

1.2.3. Создание консоли

1.2.4. Дескрипторы

1.2.5. Обработка системных событий

1.2.6. Режимы консоли

1.3. Вывод на экран

1.3.1. Экранный буфер

1.3.2. Высокоуровневый вывод на экран

1.3.3. Низкоуровневый вывод в экранный буфер

1.3.4. Управление курсором

1.3.5. Структура экранного буфера

1.3.6. Скроллинг окна

1.4. Ввод с клавиатуры

1.4.1. Высокоуровневый ввод с клавиатуры

1.4.2. Буфер ввода

1.4.3. Низкоуровневый ввод с клавиатуры

1.5. Поддержка мыши

1.5.1. События от мыши

1.5.2. Обработка событий мыши

1.6. Высший пилотаж

1.6.1. Ввод с экрана

1.6.2. Засылка в очередь

1.6.3. Синхронизация потоков

1.6.4. Обход оконной функции

1.6.5. Таймирование

ЧАСТЬ 2. ОКОННЫЙ ИНТЕРФЕЙС

2.1. Объекты консольного приложения

2.1.1. Классы и объекты

2.1.2. Объектные переменные

2.1.3. Управление объектами

2.2. Идеи объектно-ориентированного программирования

2.2.1. Общие соображения

2.2.2. Инкапсуляция

2.2.3. Наследование

2.2.4. Полиморфизм

2.2.5. Виртуальные методы

2.2.6. Конструктор и деструктор

2.2.7. Абстрактные методы

2.2.8. Библиотеки объектных типов

2.3. Базовые оконные объекты

2.3.1. Статическое окно

2.3.2. Оконный буфер

2.3.3. Методы статического окна

2.3.4. Усовершенствование окна

2.3.5. Вывод на окно

2.4. Организация оконного приложения

2.4.1. Работа со статическими окнами

2.4.2. Обработка ввода

2.4.3. Z-буфер

2.4.4. Объект - приложение

2.5. Контролы и приложение

2.5.1. Базовый контрол

2.5.2. Внешние обработчики событий

2.5.3. Методы контрола

2.5.4. Устройство объекта - приложения

2.5.5. Перерисовка окон

2.5.6. Основной цикл приложения

2.5.7. Идентификация окон. Горячие клавиши

2.6. Окна-владельцы и дочерние окна

2.6.1. Окно-владелец

2.6.2. Обработка событий окна-владельца

2.6.3. Дочернее окно

2.6.4. Обработка по умолчанию

2.6.5. Модальное окно

2.6.6. Автономные дочерние окна

2.7. Создание элементов управления

2.7.1. Надпись

2.7.2. Кнопка

2.7.3. Окно редактирования

2.8. От библиотеки к программе

2.8.1. Оформление оконных типов

2.8.2. Пример оконной программы