Тема: Практична робота №13: «Складання та виконання алгоритмів з графічним відображенням даних».
Навчальна. Вдосконалити уміння та навички створювати програми з використанням графічних даних..
Розвиваюча. Розвивати алгоритмічне мислення.
Виховна. Виховувати в учнів інформаційну культури та культуру мовлення.
Тип уроку: Вдосконалення знань, умінь та навичок.
Відображення базових графічних примітивів
1. Як у середовищі Lazarus на форму додають графічні фігури?
У середовищі Lazarus можна розміщувати деякі геометричні фігури на формі за допомогою компонентів або створити програмний код для малювання фігур у процесі виконання програми. Для розміщення на формі фігур, а саме: прямокутника, еліпса, трикутника, ромба тощо – використовують компонент Shape панелі компонентів Additional (Додаткова). За замовчуванням на екранній формі буде розміщено прямокутник.
У середовищі Lazarus можна розміщувати деякі геометричні фігури на формі за допомогою компонентів або створити програмний код для малювання фігур у процесі виконання програми. Для розміщення на формі фігур, а саме: прямокутника, еліпса, трикутника, ромба тощо – використовують компонент Shape панелі компонентів Additional (Додаткова). За замовчуванням на екранній формі буде розміщено прямокутник.
Щоб змінити колір фігури та стиль заливки, використовують властивість Brush.
У середовищі Lazarus властивість Color може набувати фіксованого набору значень.
Властивість Style може набувати значень із набору, вказаного в таблиці.
2. Як у середовищі Lazarus малюють лінію, сектор та ламану?
Для малювання ліній і фігур у процесі виконання програми на формі в середовищі програмування Lazarus потрібно розміщувати полотно. Для цього звертаються до властивості Canvas – властивості об’єкта Form, який у свою чергу є об’єктом, що має свої методи та властивості. Методи використовують для побудови різних фігур, а властивості – щоб задавати колір лінії, її товщину тощо.
Розмір полотна визначається значенням властивостей Height – кількість точок по вертикалі, та Width – по горизонталі. Полотно складається з окремих точок – пікселів, координати яких задаються значеннями х та у.
Як і в графічному редакторі, у середовищі програмування Lazarus можна малювати олівцем та пензликом. Для цього використовують властивості полотна Pen та Brush:
Form1.Canvas.Pen та Form1.Canvas.Brush
Можна задавати значення властивостей інструментів малювання
Form1.Canvas.Pen.Color – колір;
Form1.Canvas.Pen.Width – ширина (ціле число);
Form1.Canvas.Pen.Style – стиль.
Малювати можна різні об’єкти: лінію, ламану, еліпс, сектор. Для цього використовують відповідні методи полотна. Колір, товщина та стиль заливки замкнених фігур – значеннями властивостей Brush.
Form1.Canvas.Pen та Form1.Canvas.Brush
Можна задавати значення властивостей інструментів малювання
Form1.Canvas.Pen.Color – колір;
Form1.Canvas.Pen.Width – ширина (ціле число);
Form1.Canvas.Pen.Style – стиль.
Малювати можна різні об’єкти: лінію, ламану, еліпс, сектор. Для цього використовують відповідні методи полотна. Колір, товщина та стиль заливки замкнених фігур – значеннями властивостей Brush.
2. Робота в класі
Завдання 1. Повторення
Розробіть проект у середовищі Lazarus, у якому, коли клацають мишею на зображенні круга, він зафарбовується в колір, обраний у групі перемикачів Колір, а коли клацають мишею зображення квадрата, - зафарбовується обраним кольором та застосовується стиль заливки, який обирають у групі Заливка.
Вказівки:
1. Завантажте середовище Lazarus і створіть новий проект.
2. Змініть значення властивостей об'єкта Form1, розмістіть на формі об'єкти, як на зразку, та надайте значень їх властивостям:
2. Змініть значення властивостей об'єкта Form1, розмістіть на формі об'єкти, як на зразку, та надайте значень їх властивостям:
3. Для додавання на форму фігур скористайтеся компонентом Shape:
4. Для додавання на форму груп перемикачів скористайтеся компонентом RadioGroup і додайте відповідні значення у властивість Items:
5. У вікні Інспектора об'єктів встановіть властивості для фігур: Shape1 (Круг) і Shape2 (Квадрат),
6. Створіть процедуру опрацювання події натискання кнопкою миші на першій фігурі. Для цього оберіть у вікні Інспектора об'єктів компонент Shape1, на вкладці Події двічі натисніть у клітинці праворуч (...) від OnMouseDown.

і введіть команди у вікні редактора коду:
8. Проаналізуйте програмний код опрацювання подій для обох фігур. Запустіть проект на виконання. Перевірте, чи змінюють свої властивості геометричні фігури.
9. Завершіть роботу з проектом і середовищем програмування.
3. Домашнє завдання
У середовищі програмування Lazarus розробіть проект Лінії, у якому на формі будуть малюватися лінії за допомогою протягування мишею: початок лінії буде розташовано в позиції, в якій натиснули кнопку миші, а кінець – де відпустили кнопку миші.
Вказівки:
1. Завантажте середовище Lazarus і створіть новий проект.
2. Створіть процедуру опрацювання події натиснули кнопкою миші. Для цього оберіть у вікні Інспектора об'єктів компонент Form1, на вкладці Події двічі натисніть у клітинці праворуч (...) від OnMouseDown.
Вказівки:
1. Завантажте середовище Lazarus і створіть новий проект.
2. Створіть процедуру опрацювання події натиснули кнопкою миші. Для цього оберіть у вікні Інспектора об'єктів компонент Form1, на вкладці Події двічі натисніть у клітинці праворуч (...) від OnMouseDown.

і введіть команди у вікні редактора коду:
3. У вікні редактора коду запишіть програмний код для оголошення змінної логічного типу DownM, яка передаватиме стан натиснення миші в кожну процедуру опрацювання події DownM: Boolean; Зверніть увагу, що ми записуємо її у програмний код до опису процедури опрацювання подій:
4. У програмний код (аналогічно, як у пункті 2) запишіть процедури опрацювання подій для форми OnMouseUp - відпущена кнопка миші і OnMouseMove - переміщення миші:
4. У програмний код (аналогічно, як у пункті 2) запишіть процедури опрацювання подій для форми OnMouseUp - відпущена кнопка миші і OnMouseMove - переміщення миші:
6. Запустіть проект на виконання. Спробуйте намалювати лініями своє ім'я.
7. Завершіть роботу з проектом і середовищем програмування.
4. Підручник: стор. 183-188
Немає коментарів:
Дописати коментар