
- •Курс лекцій
- •Київ-Черкаси 20010
- •1 Об‘єктно-орієнтоване програмування
- •1.1. Складові класу
- •1. Поля
- •2. Методи
- •3. Властивості
- •1.2 Оголошення класу
- •2 Огляд палітри компонентів
- •2.1 Стандартні компоненти
- •2.2 Сторінки Additional та System
- •3 Обробка виняткових ситуацій у delphi
- •Структурна обробка виняткових ситуацій
- •Модель виняткових ситуацій у Delphi
- •Синтаксис обробки виняткових ситуацій
- •Приклади обробки виняткових ситуацій
- •Виклик виняткової ситуації
- •Доступ до екземпляра об'єкта exception
- •3.4 Визначені оброблювачі виняткових ситуацій
- •3.4.1 Виключення, що виникають при роботі з базами даних
- •4 Графічні можливості delphi
- •Олівець і кисть
- •Олівець
- •Лістинг 4.1 Стилі заповнення областей
- •Вивід тексту
- •Методи креслення графічних примітивів
- •Лістинг 4.2 Осі координат і оцифрована сітка
- •Ламана лінія
- •Лістинг 4.3 Графік функції (використання методу Polyline)
- •Лістинг 4.4 Креслення замкнутого контуру (зірки) у точці натискання кнопки миші
- •Окружність і еліпс
- •Прямокутник
- •Багатокутник
- •Лістинг 4.5. Графік функції
- •Вивід ілюстрацій
- •Лістинг 10.6 Слайд-проектор
- •Бітові образи
- •Лістинг 4.7. Використання бітових образів
- •5 Робота з базами данних в delphi
- •Властивість sql
Бітові образи
При роботі з графікою зручно використовувати об'єкти типу TBitMap (бітовий образ). Бітовий образ являє собою, що знаходиться в пам'яті комп'ютера, і, отже, невидиму графічну поверхню, на якій програма може сформувати зображення. Зміст бітового образа (картинка) легко і, що особливо важливо, швидко може бути виведене на поверхню чи форми області висновку ілюстрації (image). Тому в програмах бітові образи звичайно використовуються для збереження невеликих зображень, наприклад, картинок командних кнопок.
Завантажити в бітовий образ потрібну картинку можна за допомогою методу LoadFromFlie, указавши як параметр ім'я BMP-файлу, у якому знаходиться потрібна ілюстрація.
Наприклад, якщо в програмі оголошена перемінна pic типу TBitMap, те після виконання інструкції
pic.LoadFromFiie('с:\images\aplane.bmp')
бітовий образ pic буде містити зображення літака.
Вивести вміст бітового образа (картинку) на поверхню чи форми області висновку ілюстрації можна шляхом застосування методу Draw до відповідного властивості поверхні (canvas). Наприклад, інструкція
Image1.Canvas.Draw(x,у, bm)
виводить картинку бітового образа bm на поверхню компонента image1 (параметри х и у визначають положення лівого верхнього кута картинки на поверхні компонента).
Якщо перед застосуванням методу Draw властивості Transparent об'єкта TBitMap привласнити значення True, то фрагменти малюнка, пофарбовані кольором, що збігається з кольором лівого нижнього кута картинки, не будуть виведені — через них буде як би переглядати фон. Якщо в якості "прозорого" потрібно використовувати колір, відмінний від кольору лівої нижньої крапки малюнка, то властивості Transparentcoior варто привласнити значення символьної константи, що позначає необхідний колір.
Наступна програма, текст якої приведений у лістингу 4.7, демонструє використання бітових образів для формування зображення з декількох елементів.
Лістинг 4.7. Використання бітових образів
unit aplanes_;
interface
uses
Windows, Messages, SysUtils, Classes,
Graphics, Controls, Forms, Dialogs;
type
TForml = class(TForm)
procedure FormPaint(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Forml: TForm1;
sky,aplane: TBitMap; // бітові образи: небо і літак
implementation
($R *.DFM}
procedure TForm1.FormPaint(Sender: TObject);
begin
// створити бітові образи
sky := TBitMap.Create;
aplane := TBitMap.Create;
// завантажити картинки
sky.LoadFromFile('sky.bmp');
aplane.LoadFromFile('aplane.bmp') ;
Form1.Canvas.Draw(0,0,sky); // малювання фону
Form1.Canvas.Draw(20,20,aplane); // малювання лівого літака
aplane.Transparent:=True;
// тепер елементи малюнка, колір яких збігається з кольором
// лівої нижньої точки бітового образа, не малюється
Form1.Canvas.Draw(120,20,aplane);
// малювання правого літака
// звільнити пам'ять sky.free;
aplane.free;
end;
end.
Після запуску програми у вікні додатка (мал. 4.14) з'являється зображення літаків, що летять на фоні неба. Фон і зображення літака -бітові образи, що завантажуються з файлів. Біле поле навколо лівого літака показує дійсний розмір картинки бітового образа aplane. Біле поле навколо правого літака відсутне, тому що перед його виводом властивості Transparent бітового образа було привласнене значення True.
Рис. 4.14 Вплив значення властивості Transparent на висновок зображення