Відповіді до підручника Інформатика 8 клас Морзе Н.В - Морзе Н.В 2016-2020
Розділ 5. Основи подійно- та об'єктно- орієнтованого програмування
18. Властивості та методи екранної форми і елементів управління
Обговорюємо
1. Статичний спосіб зміни значень властивостей об’єктів у середовищі Lazarus означає, що значення властивостей встановлюють до запуску програми на виконання. Для зміни значень властивостей можна використати динамічний спосіб (зміна відбувається у процесі виконання програми).
2. У Free Pascal таку команду присвоєння позначають «:=», a Python — «=». Ліворуч від такого оператора записують ім’я властивості, а праворуч — значення,
. якого необхідно надати. Такі команди записують у програмному коді і значення властивостей буде змінюватися тільки після запуску програми на виконання.
3. Під час виконання програми об’єкти можуть «реагувати» на деякі події, зокрема, дії користувача — клацання мишею на об’єкті, натискання на клавіатурі клавіші чи їх комбінації, вибір вказівки меню, зміну розмірів вікна.
4. Список усіх доступних подій для кожного об’єкта в середовищі Lazarus подається на вкладці Події вікна Інспектор об’єктів. Наприклад, ОпСІіск— подія натиснення миші, OnCreate — подія створення форми, OnDestory — подія видалення форми, On Resize — подія зміни розміру вікна форми.
5. Якщо двічі клацнути у клітинці таблиці праворуч від обраної події, то у вікні редактора коду з’являється фрагмент програмного коду для опису реакції на подію. Набір команд, який використовують для опису реакції на конкретну подію й записують за правилами мови програмування, називають процедурою. Процедура розпочинається зі слова procedure, обов’язково містить пару службових слів, які обмежують список команд у процедурі: begin— початок програмного коду, end — кінець. Після кожного рядка програми, окрім begin, end, записують «;».
6. Кнопки, які створюють у середовищі Lazarus за допомогою компонента Button, використовують, щоб під час виконання програми після їх натиснення виконувався деякий набір команд.
7. Метод — фрагмент програмного коду, який вбудований в об’єкт та передбачає виконання деяких дій з ними. Запис команди для виклику методу складається з імені об’єкта та імені методу, що розділені крапкою: ім’я об ’єкта.імя методу.
8. Метод спрощує роботу з прихованими формами. Якщо програма містить кілька форм, то за замовчуванням відображається лише головна форма. Для відображення інших форм використовують метод Show або ShowModal, наприклад: Form2.ShowModal; виклик форми здійснюють у модальному режимі — після відображення заданої форми, інші стають недоступними. Для переходу до іншої форми поточну закривають і використовують метод для іншої.
9. У середовищі Lazarus вікна повідомлень використовують для виведення даних в окремому вікні, команда виклику має таку структуру: MessageDlg (повідолиіення, тип_вікна_повідомлення, [списокj<кнопок], довідка);у середовищі PyCharm команда створення вікна повідомлень прописується у програмному коді, яка мас вигляд messagebox, її підключають разом з модулем графічного інтерфейсу tkinter, наприклад: tkinter.messagebox.showinfo ("Program", "Hello Again!»).
Працюємо в парах
1. Переваги: зміна значення властивостей до кожного об’єкта, список доступних властивостей та дії з ними під час введення. Недоліки: опис конкретної події заноситься у відповідний фрагмент, потрібно уважно писати ім’я об’єкту, до якого застосовується зміна значення властивостей.
2. Яким може бути ім’я другого об’єкта? (1). Яке ім’я має перший об’єкт? (Label — напис). Як називаються 2, 3, 4-й об’єкти? (Button — кнопка). Як змінити значення властивості Caption об’єкту кнопка? (У полі Caption ввести потрібну назву об’єкта). Яка подія може бути пов’язана з об’єктом кнопка? (ОпСІіск — при натисненні кнопки у полі напис з’являється відповідь, OnMouseMove — під час наведення вказівника миші на кнопку, з’являється відповідь тощо).
3. Формі можна задати ім’я у полі Caption — «Правила безпечної поведінки в Інтернеті», змінити колір тла форми у полі Color — clGradientActiveCaption, змінити розміри вікна форми у полі Height — 500, Width — 500. На формі розмістити два написи (Label 1 та Label2) з правилами та корисними посиланнями (підвести вказівник до зображення напису (TLabel) на панелі інструментів на вкладці Standard
два рази натиснути лівою клавішею миші (аналогічно зробити ще один напис)
у властивостях напису Label 1 в полі Caption змінити текст за замовчуванням на правила безпечної поведінки в Інтернеті, Label2 — помістити текст з корисними посиланнями)
у полі Visible для Label 1 та Label2 змінити значення на False
на формі розмістити дві кнопки (Button 1 та Button2) (підвести вказівник до зображення кнопки на панелі інструментів на вкладці Standard
два рази натиснути лівою клавішею миші)
у властивостях кнопки в полі Caption змінити текст на Правила (Корисні посилання для Button2)
обрати в меню Інспектор об’єктів вкладку Події
знаходимо поле OnClick та два рази натискаємо лівою клавішею миші
у поле праворуч від Інспектора об’єктів у вказаному курсором місці записуємо процедури, які мають команди:
Procedure TForml ,ButonlClick(Sender:TObject);
begin
label1.Visible:=True;
label2. V isible: =False;
end;
та відповідно друга кнопка:
Procedure TForm1.Buton2Click(Sender:TObject);
begin
label1 .Visible:= False;
label2.V isible:=True;
end;
Працюємо самостійно
1. У властивостях напису Label1 у полі Caption змінити текст за замовчуванням на «*», створити підписи ще 14 написів
на формі розмістити ще дві кнопки (Button 1 та Button2)
у властивостях кнопки в полі Caption змінити текст на 1 та 2 відповідно:
procedure TForml.ButonlClick(Sender:TObject);
begin
Label1. Visible:=False;
Label2.Visible:=True;
Label3.Visible:=False;
Label4.Visible:=True;
Label5.Visible:=True;
Label6.Visible:=False;
Label7.Visible:=False;
Label8 .Visible: =True;
Label9.Visible:=False;
Label10.Visible:=False;
Label11.Visible:=True;
Label12.VisibIe:=False;
Label13.Visible:=False;
Label14.Visible:=True;
Label1 5.Visible:=False;
end;
та відповідно друга кнопка:
procedure TForml .Buton2Click(Sender:TObject);
begin
Label1 .Visible:=True;
Label2.Visible:=True;
Label3.Visible:=True;
Label4.Visible:=False;
Label5.Visible:=False;
Label6.Visible:=True;
Label7.Visible:=False;
Label8.Visible:=False;
Label9.Visible:= True;
Label10.Visible:=False;
Label11.Visible:=True;
Label12. Visible:=False;
Label13. Visible:=True;
Label14. Visible:=True;
Label15. Visible:=True;
end;
2. У властивостях напису Labell в полі Caption змінити текст за замовчуванням на «Л»
створити підписи ще 2 написи (зі значеннями Caption Label2 — І та Label3 — С)
аналогічним чином створити ще 6 написів, але повністю видаляємо у полі Caption текст
розмістити порожні написи один під одним (для цього можна скористатися властивостями Тор та Left)
на формі розмістити кнопку (підвести вказівник до зображення кнопки на панелі інструментів на вкладці Standard
два рази натиснути лівою клавішею миші)
у властивостях кнопки в полі Caption змінити текст Розпочати
обрати в меню Інспектор об’єктів вкладку Події
знайти поле OnClick та два рази натиснути лівою клавішею миші
у поле праворуч від Інспектора об’єктів у вказаній курсором місці записати процедури, які мають команди:
procedure TForml .ButonlClick(SendenTObject);
begin
Label4.Caption:=Label1.Caption+Label2.Caption+Label3.Caption;
Label5.Visible:=Label2.Caption+Label3.Caption+Label1.Caption;
Label6.Visible:=Label3.Caption+Label1.Caption+Label2.Caption;
Label7.Visible:=Label3.Caption+Label2.Caption+Label1.Caption;
Label8.Visible:=Label1Caption+Label3.Caption+Label2.Caption;
Label9.Visible:=Label2.Caption+Label1.Caption+Labe13.Caption;
end;
4. Змінити значення властивостей Forml: Caption — Україна; Height — 200, Width — 300, Color — clMenuHighlight
розмістити на формі Forml кнопку
змінити значення властивостей Forml: Caption — Моя Україна; Height — 100, Width — 250, Font — за власним уподобанням
на панелі інструментів обрати кнопку Новий елемент: Форма
зробити форму поточною
змінити значення властивостей Form2: Caption — Опис; Height — 300, Width — 500, Color — clYellow
розмістити на формі Form2 три кнопки
змінити значення властивостей Button 1: Caption — Столиця; Button2: Caption — Державний устрій; Button3: Caption — Територія та населення
розмістити на формі Form2 три написи
змінити значення властивостей Label 1 у полі Caption відкрити діалогове вікно Діалог введення та ввести текст «Столиця: Київ. Географічна широта та довгота: 50°27/ пн. ш., 30°30/ сх. д.», Visible — False, Font — за власним уподобанням; Label2: у полі Captionвідкрити діалогове вікно Діалог введення та ввести текст «Україна — парламентсько-президентська республіка. Незалежність проголошено: 24 серпня 1991 року», Visible — False, Font — за власним уподобанням; Label3: у полі Caption відкрити діалогове вікно Діалог введення та ввести текст «Кількість населення 42760500. Загальна площа території: 603628 км2», Visible — False, Font — за власним уподобанням зробити Forml поточною
у редакторі коду після слова «implementation» написати uses Unit2; (для підключення другої форми)
виділити кнопку Buttonl на Forml
обрати в меню Інспектор об’єктів вкладку Події
знайти поле OnClick та два рази натиснути лівою клавішею миші
у поле праворуч від Інспектора об’єктів у вказаній курсором місці записати процедури, які має команду:
Unit2.Form2.ShowModal;
зробити Form2 поточною
виділити кнопку Buttonl на Form2
обрати в меню Інспектор об’єктів вкладку Події
знайти поле OnClick та два рази натиснути лівою клавішею миші
у поле праворуч від Інспектора об’єктів у вказаній курсором місці записати процедури, які мають команди:
Label1.Visib!e:=True;
Label2.Visible:= False;
LabeB.Visible:= False;
виділити кнопку Button2 на Form2
обрати в меню Інспектор об’єктів вкладку Події
знайти поле OnClick та два рази натиснути лівою клавішею миші
у поле праворуч від Інспектора об’єктів у вказаній курсором місці записати процедури, які мають команди:
Label1. Visible:=False;
Label2.Visible:=True;
Label3.Visible:= False;
виділити кнопку Button3 на Form2
обрати в меню Інспектор об’єктів вкладку Події => знаходимо поле OnClick та два рази натиснути лівою клавішею миші
у поле праворуч від Інспектора об’єктів у вказаній курсором місці записати процедури, які мають команди:
Label1.Visible:=False;
Label2.Visible:= False;
Label3.Visible:= True;
Перша публікація: 01/01/2016-2020
Останнє оновлення: 31/12/2023
Редакційна та навчальна адаптація: Даний матеріал зведено на основі першоджерела/оригінального тексту. Команда проєкту здійснила редакційне оглядове опрацювання, виправлення технічних неточностей, структурування розділів та адаптацію змісту до навчального формату.
Що було опрацьовано:
- усунення форматних дефектів (OCR-помилки, розриви структури, дефектні символи);
- редакційне упорядкування змісту;
- уніфікація термінів відповідно до академічних джерел;
- перевірка відповідності фактичних тверджень тексту першоджерела.
Усі згадки про автора, рік видання та походження первинного тексту збережено відповідно до джерела.