Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Методички » Графіка в Delphi

Реферат Графіка в Delphi





лим. p> Спробуйте зробити самі простеньку мультиплікацію - рухому коло. Почніть новий додаток і в розділ implementation вставте оголошення

X, Y: integer;


Тим самим ви введете глобальні змінні X і Y - поточні координати зображення.

У подія форми OnPaint вставте оператори

. Brush. Color: = clWhite;: = clWhite;. Pen. Mode: = pmNotXor;


Перший з цих операторів задає білий колір кисті Brush . Значить ваша окружність буде зафарбована всередині білим кольором. Другий оператор задає білий колір фону поверхні форми. p> Третій оператор встановлює режим пера pmNotXor , який дозволить вам прати колишнє зображення перш, ніж намалювати нове.

Навіть найпростіша мультиплікація потребує синхронізації. Інакше швидкість руху буде визначатися швидкодією комп'ютера. Тому перенесіть на форму компонент Timer - таймер зі сторінки System. Цей компонент описаний в розділі 5.7 . p> Можете подивитися там його докладний опис. А поки задайте його властивість Interval рівним, наприклад, 30 (цей час витримки в мілісекундах, але реальний час витримки буде більше - див. розділ 5.7) і встановіть властивість Enabled рівним < b> false (це означає, що таймер не запускатиметься автоматично в момент запуску програми).

У обробник події цього компонента OnTimer вставте оператори


// Стирання колишнього зображення . Ellipse (Х-5, Y, X +5, Y-1Q); (X);

// Малювання нового зображення . Ellipse (Х-5, Y, X +5, Y-10);

// Останов при досягненні кінця форми

if (X> = ClientWidth-20) then . Enabled: = false;


Перший з цих операторів малює окружність в тому місці, де вона була намальована раніше, тобто стирає колишнє зображення. p> Далі збільшується на одиницю функцією Inc поточна координата X і зображення кола малюється в новій позиції. p> Останній оператор зупиняє зображення у краю форми.

Тепер перенесіть на форму кнопку Button і в обробник клацання на ній помістіть оператори


Х: = 10;: = 100;. Ellipse (X-5, Y, X +5, Y-10);. Enabled: = true;


Перші два оператори задають початкові координати кола. Третій оператор малює окружність в її початковому положенні, а четвертий - запускає таймер. p> відтранслюватиме додаток, запустіть його на виконання, клацніть на кнопці. Ви побачите зображення кола, що переміщається за формою зліва направо. А далі вже підключіть вашу фантазію і перетворіть це не надто цікавий додаток у що-небудь більш захоплююче. p> На канві можна відображати не тільки програмно створювані зображення, але й зображення, що зберігаються в графічних файлах. Тільки сама канва не має методу завантаження зображення з файлу. Тому завантажувати файл треба в який-небудь інший графічний об'єкт, здатний сприймати інформацію графічних файлів. А потім переписувати зображення з цього об'єкта на канву за допомогою методу канви Draw . Його опис:

Draw (X, Y: Integer; Graphic: TGraphic);


Тут параметри Х і Y визначають координати лівого верхнього кута розміщення зображення на канві, a Graphic - об'єкт, що зберігає інформацію. В якості такого об'єкта може виступати, наприклад, об'єкт типу TBitMap , призначений для зберігання бітових матриць. Давайте подивимося, як все це виглядає на практиці. p> Відкрийте новий додаток, перенесіть на форму компонент OpenPictureDialog зі сторінки Dialogs (це компонент діалогу відкриття графічних файлів - див розділ 8.2 ) і кнопку Button . Додайте OpenPictureDialog в будь-якому місці форми, так як цей компонент Невізуальний, а кнопку розмістіть внизу форми. У обробник клацання на кнопці занесіть код:


procedure TForm1. Button1Click (Sender: TObject);

var : TBitMap;

begin

// Вибір користувачем графічного файлу

if OpenPictureDialog1. Execute then

begin

// Створення об'єкта BitMap типу TBitMap : = TBitMap. Create;

// Завантаження в BitMap обраного графічного файлу . LoadFromFile (OpenPictureDialog1. FileName);

// Перенесення зображення на канву форми . Draw (10, 10, BitMap);

// Знищення об'єкта BitMap . Free;

end ;

end ;


Цей код створює тимчасовий об'єкт типу TBitMap з ім'ям BitMap . Потім викликається діалог відкриття графічного файлу OpenPictureDialog1 і, якщо користувач вибрав файл, то він завантажується в BitMap методом LoadFromFile . Потім методом Draw завантажене зо...


Назад | сторінка 3 з 11 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Розробка програми з використанням OpenGL для динамічного зображення тривимі ...
  • Реферат на тему: Дослідження впливу параметрів руху об'єкта, що знаходиться за перешкодо ...
  • Реферат на тему: Розробка програми для завантаження зображення нот з подальшим їх розпізнава ...
  • Реферат на тему: Ряди розподілу: види, графічне зображення, форми розподілу
  • Реферат на тему: Шорсткість поверхні і її зображення на кресленнях