- •Windows -приложение
- •Среда программирования
- •Встроенный отладчик
- •Использование графики
- •Графические данные и палитра
- •Сохранение проекта
- •Структура приложения
- •Структура модуля
- •Простые типы
- •Символьные типы
- •Логические типы
- •Тип перечень
- •Составной оператор
- •Оператор if
- •Оператор цикла for
- •Оператор цикла while
- •Оператор цикла repeat
- •Пример приложения 6
- •Пример приложения 7
- •Статические массивы
- •Динамические массивы
- •Оператор with
- •Идентичность типов
- •Совместимость типов
- •Преобразование типов
- •Операторы обработки исключительных ситуаций
- •Рекурсия
- •Процедура exit
- •Директивы подпрограммы
- •Класс как объектный тип
- •Наследование
- •Операции is и as
- •Типы ссылки на класс
- •Типизированные файлы
- •Файлы без типа
- •Пример приложения 17
- •Компонент tmainmenii
- •Двунаправленные списки
- •Потоки данных
- •Пример приложения 22
- •Интерфейс drag and drop
- •Пример приложения 24
- •С файлами
- •Пример приложения 26
- •Программные потоки
- •Приоритеты потоков
- •Класс tthread
- •Проблемы синхронизации потоков
Использование графики
Программисты стараются придать внешнему виду своих приложений максимум привлекательности, так как 80% информации мозг человека получает по зрительному каналу. Поэтому в Delphi имеются развитые средства для работы с графическими возможностями Windows.
ОСНОВНЫЕ ИНСТРУМЕНТЫ
В стандартном графическом интерфейсе Microsoft Windows GDI (Graphics Device Interface включает набор программ, воспроизводящих графику) основой для рисования служит HDC (Handle Device context) - дескриптор контекста устройства - и связанные с ним шрифт, перо и кисть (контекст в данном случае - это стек плюс регистры процессора). Реализованные биб-
16
2--4758
17
лиотечные GDI-функции являются аппаратно независимыми, т.е. приложение работает не с физическим, а с логическим устройством, имеющим высокие характеристики. Взаимодействие с устройствами вывода осуществляется с помощью драйверов.
В состав библиотеки компонентов (VCL) Delphi входят графические надстройки, назначением которых является обеспечить удобный доступ ко всем свойствам указанных выше инструментов: шрифт (Font), перо (Реп), кисть (Brush).
Шрифт Windows определяется классом TFont. В Delphi допускаются только горизонтально расположенные шрифты. Шрифты имеют множество характеристик, основные из которых приведены в табл. 1.
Свойство |
Описание |
Имя (Name) |
Например, Aria] |
Стиль (Style) |
Особенности начертания: жирный, курсив, подчеркнутый, перечеркнутый |
Цвет (Color) |
Цвет шрифта |
Вариант набора символов JCharset) |
Например, кириллица Russian Charset или по умолчанию Default Charset |
Способ установки ширины шрифта (Pilch) |
Например, с переменной шириной символа, моноширинный, по умолчанию (определен именем) |
Высота (Height) |
В пикселах |
Размер (Size) |
В пунктах |
Класс ТРеп инкапсулирует свойства пера GDI. Перо имеет следующие основные характеристики:
-
стиль (Style) линии (сплошная, пунктирная и т. д.);
-
толщина (Width) пера в пикселах;
-
цвет (Color) пера;
-
идентификатор растровой операции (Mode), определяющей взаимодей ствие пера с поверхностью изображения.
В Windows существуют ограничения на стили линий - пунктирные и штрихпунктирные (psDash, psDot, psDashDot, psDashDotDot) могут быть установлены только для линий единичной толщины. Более толстые линии должны быть сплошными. В Delphi это ограничение также сохраняется.
Класс TBrush инкапсулирует свойства кисти - инструмента для заливки областей. Кисть имеет такие характеристики, как цвет (Color) и стиль (Style). Последний определяет фактуру закраски, например сплошную.
Шрифт, перо и кисть не могут использоваться самостоятельно. Они являются составными частями класса TCanvas. Этот класс объединяет в себе "холст", рабочие инструменты (перо, кисть, шрифт), а также набор функций по рисованию геометрических фигур. Свойство типа TCanvas называют канвой. Канва входит в качестве свойства во многие компоненты, в частности, TImage. Изображение на канву компонента TImage можно переносить из файла с помощью свойства Picture. При этом можно загружать растровые
18
изображения (битовые карты, BMP), пиктограммы в виде иконок (файлы ICO), из метафайлов (стандартный формат WMF и расширенный EMF) и из сжатых в формате JPEG изображений (файлы JPG и JPEG).