1. Основні поняття
У 1999 р. три людини - Cliff Baeseman, Shane Miller і Michael A. Hess. зробили спробу написати безкоштовне графічне середовище для безкоштовного компілятора FPC. Проект отримує назву Lazarus. На сьогоднішній день слід визнати, що ідея виявилася вельми плідною тому, що середовище існує і розвивається і понині.
Lazarus - це безкоштовний інструмент розробки додатків з графічним інтерфейсом з відкритим кодом. IDE Lazarus є середовищем для швидкої розробки програм, аналогічним Delphi, і базується на оригінальній кросплатформенній бібліотеці візуальних компонентів LCL (Lazarus Component Library), сумісних з VCL Delphi. До складу IDE входять і не візуальні компоненти. В принципі такого набору досить для створення програм з графічним інтерфейсом і додатків, що працюють з базами даних і Інтернетом. Lazarus - це стабільне, багате можливостями середовище розробки для створення самостійних графічних і консольних програм. В даний час воно працює на Linux, FREEBSD і Windows і містить редактор коду, що настроюється, візуальне середовище створення форм разом з менеджером пакетів, відладчиком і графічним інтерфейсом, повністю інтегрованим з компілятором FreePascal. Компілятор FreePascal і його середовище швидкої розробки графічного інтерфейсу Lazarus безкоштовні і розповсюджуються за вільною ліцензією GNU GPL. Крім того, компілятор Free Pascal дозволяє створювати кросплатформенні програми, тобто додатки, які можуть виконуватися на різних платформах, – як в Linux, так і в Windows.
Lazarus - це візуальне середовище програмування. «Візуальне» означає спосіб, за допомогою якого в програмі створюється графічний користувацький інтерфейс. Інтерфейс створюється візуально – майбутня програма набирається, конструюється з окремих об'єктів. Кожен елемент вікна нашої майбутньої програми на етапі розробки переноситься з готових шаблонів, розміщується де потрібно. Він вже містить набір властивостей, які програміст встановлює на свій смак. Тобто наша майбутня програма складається з готових «цеглинок», які ми беремо і розміщуємо на формі. Наприклад, нам потрібно використати в проекті кнопку. Ми беремо її на палітрі компонентів і розміщуємо на формі. Вона вже містить набір властивостей, які ми просто змінюємо.
У традиційній, або процедурній, моделі програмування виконання програми починається з першого рядка і слідує стандартним шляхом з викликом, в міру необхідності, тих або інших процедур. У об'єктно-орієнтованих мовах реалізується подієво-керована модель програмування, тобто програма виконується, не слідуючи строго приреченим шляхом, а залежно від того, які наступають події. Ці події можуть бути викликані, наприклад, діями самого користувача (натиснув на клавішу, клацнув покажчиком миші по екранній кнопці і ін.) або повідомленнями від системи (внутрішніх компонентів комп'ютера або підключених периферійних пристроїв). Таким чином, послідовність виконання запущеної програми визначається послідовністю подій. При наступному запуску програми ця послідовність може бути іншою.
Отже, як випливає з назви, об'єктно-орієнтоване програмування (object-oriented programming, воно ж подієво-кероване програмування – event-driven programming) – це програмування, направлене на об'єкти.
Що ж таке об'єкт (object)? А все, що нас оточує і з чим ми можемо взаємодіяти (поторкати, побачити, почути, зміряти, провести експеримент і т.д.) Це частина додатку, яка характеризується властивим саме йому набором властивостей (properties), а також реагує на події (events).
1. Що таке Lasarus?
2. Що таке LCL?
3. Які програми називають кросплатформенними?
4. Чому Lazarus називають візуальним середовищем програмування?
5. Що таке об’єктно-орієнтоване програмування?
6. Що таке подієво-керована модель програмування?
7. Що таке об'єкт?
Налаштування Lazarus.
При запуску середовища програмування відкривається останній проект. Щоб відмінити це - виконайте
2 Основні елементи середовища розробки Lazarus.
Середовище Lazarus складається з декількох вікон.
За допомогою цього вікна можна управляти процесом розробки додатку. У ньому передбачені команди управління файлами, компіляцією, редагуванням, вікнами і так далі. Вікно розбите на три функціональні блоки:
Головне меню. У нім розташовані команди управління файлами, команди управління компіляцією і властивостями всього застосування, команди управління вікнами і налаштуваннями середовища і багато що інше. Меню розташовується у верхній частині основного вікна.
Панель інструментів. Панель інструментів надає швидкий доступ до основних команд головного меню. Вона розташована в лівій частині головного вікна, під головним меню.
Палітра компонентів. Надає доступ до основних компонентів середовища розробки, наприклад: поле введення, напис, меню, кнопка і тому подібне
Інспектор об'єктів
У верхній частині вікна показується ієрархія об'єктів, а знизу, розташовано три вкладки: "Властивості", "Події", "Вибране". Призначення інспектора об'єктів – це перегляд і встановлення всіх властивостей і подій об'єктів. На вкладці "Властивості" перераховуються і встановлюються всі властивості вибраного об'єкту. На вкладці "Події" перераховуються всі події для об'єкту, вибирається подія для обробки в програмному коді. На вкладці "Вибране" вибрані властивості і події.
3. Редактор програмного коду Lazarus
Саме у цьому вікні ми набиратимемо тексти своїх програм. Багато функцій і можливості цього редактора збігаються з можливостями звичайних текстових редакторів, наприклад Блокнота. Текст в редакторові можна виділяти, копіювати, вирізувати, вставляти. Крім того, в редакторові можна здійснювати пошук заданого фрагмента тексту, виконувати вставку і заміну. Але, звичайно, цей редактор програмного коду Lazarus володіє ще рядом додаткових можливостей для комфортної роботи стосовно розробки програм. Основна перевага редактора полягає в тому, що він володіє можливостями підсвічування синтаксису, причому не тільки Pascal, але і інших мов, а також рядом інших зручностей. Зокрема, виділений фрагмент тексту можна зрушувати управо або вліво на кількість позицій, вказаних в настройках Оточення ->Параметри.->Редактор -> Загальні -> Відступ блоку, що дуже зручно для форматування з метою структуризації коду.
4 Конструктор форм
В ньому створюється форма – вікно вашої майбутньої програми. Для зручності розміщення та позиціювання об’єктів форма покрита сіткою
5. Вікно повідомлень
У цьому вікні виводяться повідомлення компілятора, компонувальника і відладчика.
На цьому ми закінчимо наш короткий огляд середовища Lazarus. Ми розглянули далеко не всі види вікон IDE, та і ті, що розглянули, ми розглянули нашвидку, лише для того, щоб отримати перше уявлення про середовище Lazarus. Займатися нудною розповіддю про всі пункти, опції і можливості Lazarus я зараз не буду. Адже не все буде зрозуміло, та і нудно! Адже вам "не терпиться в бій"! Тому розглядатимемо тільки ті елементи, які будуть нам потрібні на перших порах. А, останнє ми вивчатимемо в міру необхідності і в потрібних місцях. Так, мені здається, буде краще!
1. Для чого призначене головне вікно IDE Lazarus?
2. Для чого призначене головне меню?
3. Для чого призначена панель інструментів?
4. Для чого призначена палітра компонентів?
5. Для чого призначений інспектор об'єктів?
6. Для чого призначена вкладка "Властивості"?
7. Для чого призначена вкладка "Події"?
8. Для чого призначена вкладка "Вибране"?
9. Для чого призначений редактор програмного коду Lazarus?
10. Для чого призначений конструктор форм?
11. Для чого призначене вікно повідомлень?
6 Склад проекту.
Середовище програмування Lazarus має зручний графічний інтерфейс. Програма, написана на Lazarus, складається з декількох файлів. Комплект файлів, які використовуються для розробки вашої програми, називається проектом. При збереженні проекту попередньо створюють папку, у яку зберігають файли проекту:
Папки зі службовими файлами
файл іконки проекту (розширення ico); файли проекту (розширення lpi та lpr);
файл ресурсів (розширення res); файл форми (розширення lfm);
файл програмного коду – розширення pas. відкомпільований файл проекту (розширення exe);
7 Робота в середовищі програмування.
Щоб відкрити збережений проект, необхідно знайти на диску та запустити файл з розширенням lpr
(піктограма ). Або на панелі інструментів натиснути Открыть, та відкрити в потрібній папці потрібний файл.
Для збереження проекту потрібно створити папку, назвавши її так, як вашу майбутню програму.
Потім задіяти команду Сохранить все та в створеній папці зберегти ваш проект – послідовно всі файли. Слід звернути увагу на те, що під час збереження вашого проекту потрібно декілька разів зберігати всі файли проекту – файлу форми, файлу самого проекту, та інших. Останнє збереження відкриє вікно
, Щоб запустити на виконання ваш проект, потрібно натиснути кнопку “Запустить”
на панелі інструментів або натиснути кнопку F9. Щоб зупинити виконання, треба або закрити вікно форми вашого проекту, або натиснути кнопку “Остановить” на панелі інструментів Lazarus.
8 Створення проекту.
Щоб створити новий проект, необхідно:
- створити папку з назвою проекту
- зберегти в папку створений проект
1. Що називають проектом?
2. Що необхідно зробити перед тим, як зберегти проект?
3. Яке призначення папок backup та lib?
4. Для чого призначений файл, який має розширення ico?
5. Для чого призначені файли, які мають розширення lpi та lpr?
6. Для чого призначений файл, який має розширення res?
7. Для чого призначений файл, який має розширення lfm?
8. Для чого призначений файл, який має розширення pas?
9. Для чого призначений файл, який має розширення exe?
10. Як відкрити збережений проект за допомогою програми Мій комп’ютер?
11. Як відкрити збережений проект за допомогою панелі інструментів?
12. Як зберегти створений проект?
13. Чому під час збереження проекту потрібно декілька разів називати файли?
14. Як запустити на виконання проект?
15. Як зупинити виконання проекту?
1. Відкрийте вказану учителем папку.
2. Запустіть проект, який міститься у цій папці.
3. Запустіть на виконання проект.
4. Зупиніть виконання проекту.
5. Закрийте Lazarus, не зберігайте проект.
6. Запустіть Lazarus.
7. За допомогою панелі інструментів відкрийте проект у вказаній учителем папці.
8. Запустіть на виконання проект.
9. Зупиніть виконання проекту.
10. Закрийте Lazarus, не зберігайте проект.
9 Властивості об’єктів.
Властивості форми
Властивість Caption – заголовок вікна, є деякий текст. За умовчанням встановлюється значення "Form1".
Бажано тут вказувати короткий зміст програми, наприклад "Додавання чисел". Дуже часто розробники тут виводять назву програми і ім'я документа, пов'язаного з цією програмою.
Властивість Name – ім'я форми в програмі. По цьому імені можна звертатися до форми як до об'єкту в програмі. За умовчанням встановлюється ім'я Form1. Бажано давати осмислені імена, особливо якщо в програмі є декілька форм. Іменування повинне підкорятися вимогам мови Паскаль, тобто ім'я не повинне містити неприпустимі символи, пропуски і так далі.
Розміри вікна форми задаються властивостями Height і Width. Розміри задаються в пікселях. Положення вікна при запуску визначається властивістю Position, оптимально наступне значення: poScreenCenter або poDesktopCenter – вікно виводиться в центрі екрану, розмір визначається при проектуванні. Для того, щоб вибрати потрібне значення, необхідно клацнути на назву властивості.
Active Control – об’єкт, який стане активним після запуску створеної вами програми. Вибирається із списку об’єктів, які ви розмістили на формі.
Border Icons – наявність кнопок керування вікном форми та системного меню
недоступна кнопка «розгорнути» доступна кнопка «згорнути» доступне системне меню вікна Border Style – стиль границі вікна форми. bsSingle – незмінна, програма працює у віконному режимі і користувач не може змінити розміри форми.
Icon – іконка у лівому верхньому кутку вікна форми, завантажується з файлу іконок (розширення ico)
Після встановлення цих властивостей ваша програма буде мати незмінне по розмірах вікно, яке буде при запуску з’являтися автоматично в центрі екрану, його можна буде згорнути, неможливо розгорнути, вікно матиме вибрану іконку у лівому верхньому кутку.
Для того, щоб відкомпільований файл створеної програми мав відповідну назву та піктограму в провіднику, необхідно встановити параметри
1. Яке призначення властивості Caption?
2. Яке призначення властивості Name ?
3. Яке призначення властивості Height і Width?
4. Яке призначення властивості Position?
5. Що буде, якщо властивості Position встановити значення poDesktopCenter?
6. Яке призначення властивості Active Control?
7. Як зробити недоступною кнопку «розгорнути»?
8. Як зробити доступною кнопку «згорнути»?
9. Як зробити доступним системне меню вікна?
10. Яку властивість форми потрібно змінити, щоб користувач не міг змінити розміри форми працюючої програми?
11. Як встановити іконку у лівому верхньому кутку вікна форми?
12. Які параметри проекту потрібно змінити, щоб відкомпільований файл створеної програми мав
відповідну назву та піктограму в провіднику?
1. Створіть папку, яка буде містити проект.
2. Запустіть Lazarus.
3. Встановіть назву заголовка форми «Обмінний пункт»
4. Встановіть ширину форми 330 пікселів
5. Встановіть висоту форми 170 пікселів
6. Налаштуйте властивості форми таким чином, щоб вона запускалась в центрі екрану
7. Встановіть властивості форми так, що користувач не міг розгорнути та міг згорнути працюючий додаток
8. Встановіть властивості форми так, що користувач не міг змінити розміри форми працюючого додатку
9. Встановіть іконку форми з папки, вказаної учителем
10. Встановіть властивості проекту таким чином, щоб відкомпільований файл вашого проекту мав
назву заголовку форми та іконку форми
10 Розміщення на формі потрібних об'єктів
Для того, щоб розмістити на формі потрібний об'єкт, треба вибрати його на палітрі компонентів. Потім натиснути ліву кнопку мишки на формі в тому місці, де буде лівий верхній край об’єкту, протягнути курсор мишки та відпустити кнопку мишки в тому місці форми, де буде розміщено правий нижній край об’єкту. Після цих операцій об’єкт з'явиться на формі. Коли по об'єкту клацнути лівою кнопкою мишки, ти він стане виділений (по краях об'єкту з'являться крапки). Якщо потягнути за крапку курсором при натиснутій лівій кнопці мишки, то можна змінити розмір об'єкту. Щоб перемістити об’єкт на інше місце, потрібно клацнути та затримати на ньому ліву кнопку мишки, перемістити його на нове місце на формі та відпустити ліву кнопку мишки. Приклад – зміна розмірів кнопки.
Кнопка стандартного розміру |
Кнопка зміненого розміру |
Щоб створити на формі написи, використовують об’єкт ТLabel. палітри компонентів, вкладка
Цей об'єкт призначений для створення надписів на формі. Його розміщують в потрібному місці на формі та встановлюють потрібні властивості. Також це стандартний об’єкт для виведення інформації – аналог оператора Writel Паскаля.
Щоб вивести зображення на формі – використовують TImage палітри компонентів, вкладка
Для вводу в програму текстової інформації від користувача використовують об’єкт текстове поле (TEdit), палітри компонентів, вкладка Standart
Для запуску виконання програмою якихось дій використовують командну кнопку (ТButton) палітри компонентів, вкладка Standart.
11 Створення інтерфейсу програми.
Створення програмного проекту складається з декількох етапів:
- Створення інтерфейсу (форми та об’єктів);
- Написання програмного коду;
- Збереження проекту;
- Компілювання проекту (створення програмного файлу).
Для прикладу напишемо програму, яка буде обчислювати розрахунки долари-гривні та гривнідолари згідно введеного курсу та суми грошей.
Спочатку створимо інтерфейс програми.
Нам потрібно на формі створити надписи, які видають інформацію про дію програми та про місця вводу даних в програму. Це буде реалізовано за допомогою об'єктів TLabel. Причому мітки label1, label2 та label3 будуть тільки показувати написи на формі, а ось мітка label4 буде виводити результати обчислень.
Запускати роботу програми будуть два об’єкти - кнопка Button1 запускає розрахунок долари в гривні, а кнопка Button2 запускає розрахунок гривні в долари. Встановлюємо текст заголовку форми – властивості Caption значення „Обмінний пункт”. Встановлюємо властивості форми, як описано вище у пункті 8. На цьому розробка інтерфейсу програми закінчена. Тепер потрібно її зберегти. Створюємо папку, називаємо її „Обмінний пункт”. Зберігаємо в цю папку файли проекту.
1. Яке призначення палітри компонентів?
2. Як розмістити на формі потрібний елемент керування?
3. Як перетягнути в інше місце форми елемент керування?
4. Як змінити розміри елемента керування?
5. Для чого призначений об’єкт ТLabel?
6. Для чого призначений об’єкт TImage?
7. Як вивести зображення на формі?
8. Для чого призначений об’єкт текстове поле TEdit? 9.Для чого призначена командна кнопка ТButton?
1. Відкрийте проект, створений у попередньому завданні 2. Розмістіть на формі об’єкти, показані на рисунку 3.Збережіть проект.
12 Зміна властивостей об’єктів під час виконання програми.
Для встановлення нової властивості потрібного об’єкта потрібно знати його ім’я у проекті. Потім необхідно записати такий рядок коду:
ім'я_об'єкту.властивість:=нове_значення;
Приклад – на формі розмістили три об’єкти TLabel. В інспекорі об’єктів в ієрархічній структурі ми бачимо головний об’єкт – форму TForm з іменем Form1, та три підлеглих розміщених на формі TLabel з іменами Label1, Label2 та Label3. На прикладі ми виділили Label3 в інспекторі об’єктів, відповідно він виділився на формі. Його ім’я Name ми бачимо як у інспекторі об’єктів, так і у вкладці Свойства - Name Label3. Тепер, щоб вивести на Label3 нову текстову інформацію, ми напишемо такий рядок коду:
Label3.Caption:=’Новий текст’;
Для виведення інформації існує стандартний об’єкт для виведення інформації TLabel – аналог оператора Writel Паскаля. Але є різниця в його застосуванні. Щоб вивести інформацію на розміщеному на формі об’єкті TLabel, потрібно присвоїти нове значення властивості Caption. Просте виведення текстової інформації на об’єкті TLabel, який має ім’я Label1, має вигляд Label1.Caption:= ’Вітаю’;
Але якщо потрібно вивести значення змінної, яка має числову інформацію, потрібно перетворити її в текстову за допомогою функції FloatToStr для змінної типу Real та функції IntToStr для змінної типу Integer.
Приклад виведення на Label1 значення змінної Suma типу Real: Label1.Caption:= FloatToStr(Suma);
Приклад виведення на Label1 значення змінної Suma типу Integer:
Label1.Caption:= IntToStr(Suma);
Також при виведенні інформації можливо вказати, скільки чисел виводити цілої та десяткової частин числа. На прикладі виводиться п’ять чисел цілої та два числа десяткової частин змінної Suma типу Real: Label1.Caption:= FloatToStrF(Suma,fffixed,5,2);
Щоб вивести змішану (текстову і числову) інформацію, потрібно привести все до текстового типу і скласти рядок тексту. Наприклад
Label1.Caption:= ’При Х=’ + FloatToStr(Х) + ’ У=’ + FloatToStr(У);
Щоб вивести інформацію у декілька рядків, подібно до оператора Writeln Паскаля, існує зовсім інший об’єкт. Він виводити інформацію у декілька рядків, причому коли інформація не вміщується, показує смужки прокрутки. Це об’єкт TMemo палітри компонентів, вкладка Standart. Щоб активувати смужки прокрутки, потрібно встановити значення ssBoth властивості ScrollBars:
Щоб вивести три рядки тексту, потрібно написати такий код:
Мemo1.Lines.Add('Привіт');
Мemo1.Lines.Add('мене звуть'); Мemo1.Lines.Add('Володимир');
14 Організація введення даних.
Для введення інформації існує стандартний об’єкт для введення інформації TEdit – аналог оператора Readl Паскаля. От тільки щоб ми туди не ввели – все буде тільки текстового типу. Якщо потрібно присвоїти значення змінній, яка має числовий тип, потрібно перетворити введений в TEdit текст в число за допомогою функції StrToFloat для змінної типу Real та функції StrToInt для змінної типу Integer. Стандартний текст об’єкту TEdit стирається у властивості Text – для роботи програми він не потрібний, адже при запуску вашої програми TEdit повинен бути пустим і готовим для введення інформації.
Приклад присвоєння значення змінної Suma типу Real введеного в Edit1 числа: Suma:=StrToFloat (Edit1.Text); Приклад присвоєння значення змінної Suma типу Integer введеного в Edit1 числа: Suma:=StrToInt (Edit1.Text);
1. Ім’я мітки label12. Напишіть рядок програмного коду, який виводить на мітку текст «Вітаю»
2. Напишіть рядок програмного коду, який виводить на мітку Label1 значення змінної Resul типу Real
3. Напишіть рядок програмного коду, який виводить на мітку Label5 значення змінної Dart типу Integer
4. Напишіть рядок програмного коду, який виводить на мітку Label8 три числа цілої та два числа десяткової частин змінної Resul типу Real
5. У змінній Street типу Real знаходиться значення пройденого шляху – число 50. Напишіть рядок програмного коду, який виводить на мітку Label3 рядок типу «Пройдений шлях = 50»
6. Для чого призначений об’єкт TMemo?
7. Як в об’єкті TMemo вивести текст у декілька рядків?
15 Програмний код. Подія.
Перш ніж розпочати написання програмного коду, необхідно скласти алгоритм роботи програми. В нас програма здійснює два розрахунки, тому буде два алгоритми. Складаємо алгоритм розрахунку долари-гривні.
Текстове поле Edit1 |
Текстове поле Edit2 |
Кнопка Button1
|
Мітка Label4 |
Початок
Кінець
Як бачимо, курс долара вводиться в текстове поле Edit1, сума доларів вводиться , текстове поле Edit2, обчислення запускається натисканням на кнопку Button1, результат виводиться на мітку Label4.
Аналогічно складаємо алгоритм розрахунку гривні-долари. Подія.
Для кожного об’єкта передбачені події – зовнішній вплив на об’єкт. Наприклад, подія натискання на кнопку лівою кнопкою мишки або наведення курсору мишки на об’єкт.
Програма почне працювати лише тоді, коли з об’єктом виникне подія, для якої в програмі описаний програмний код.
Подія Click виникає, як тільки користувач виконає клацання кнопкою миші на елементі управління. Подія MouseDown виникає при натисненні кнопки миші, а MouseUp – при відпусканні. Подія MouseMove виникає, коли користувач пересуває курсор миші.
Якщо властивості форми KeyPreview привласнити значення True, то подія пов'язана з клавіатурою, передається спочатку формі, а потім поточному елементу управління. Подія KeyDown викликається при натисненні клавіші клавіатури, а KeyUp – при відпуску.
Активний елемент отримує фокус, тобто якщо це текстове поле, то воно відображається мерехтливим маркером введення, а якщо командна кнопка, то виділяється пунктирною рамкою навколо напису. Події форми:
• подія FormCreate відбувається при завантаженні форми в пам'ять;
• подія Close викликається, якщо форма вивантажується з пам'яті ;
Щоб програма почала працювати, необхідно написати програмний код – набір команд мовою Lazarus.
Для того, щоб написати програмний код, потрібно вияснити декілька питань: який об’єкт буде запускати обчислення; яка подія при цьому буде з ним відбуватись.
В нашому випадку запускати роботу програми буде два об’єкти – кнопка Button1 (розрахунок доларів в гривні) та кнопка Button2 (розрахунок гривень в долари). Отже, програма буде здійснювати два незалежні розрахунки. Запускатись програма буде тоді, коли виникне подія click (натискання на кнопку лівою кнопкою мишки, коли курсор знаходиться над нею). Пишемо програмний код.
Щоб вивести вікно програмного коду, треба двічі клацнути лівою кнопкою мишки по об'єкту, який буде запускати роботу програми. Клацнемо двічі по кнопці Button1. Вікно програмного коду має такий вигляд:
|
|
|
Як видно в вікні програмного коду, ми вивели програмний код кнопки Button1, події click. Для кожної події є процедура обробки цієї події, яка описується в програмному коді. Розпочинається процедура обробки події службовим словом procedure TForm1.Button1Click
Закінчується процедура обробки події службовим словом
Між словами begin після заголовка процедури та end; вписують програмний код.
Тоді, коли натиснути на кнопку Button1, програма виконає команди, які ви впишете між словами begin та end;
16 Величини. Оголошення змінних.
Змінна – це іменована область пам'яті, призначена для зберігання даних. Тип даних задає певний формат або розмір вмісту змінної. При оголошенні змінних указується тип даних:
Імя_змінної:Тип_данних;
Оголошують змінну в секції var програмного коду після рядка Form1: TForm1; Приклад оголошення змінних:
x,a,b:Integer; y:Real;
В нашу програму будуть вводитись користувачем три види даних – курс долара (вводиться в текстове поле Edit1), сума доларів (вводиться в текстове поле Edit2) та в це саме текстове поле вводиться сума гривень. Щоб зберігати в програмі ці дані, використовують змінні. В змінні записують введені дані. В нашій програмі необхідно використати три змінні. В одній змінній (назвемо „Kurs”) буде зберігатись курс долара, в другій змінній (назвемо „Suma”) буде зберігатись сума грошей, третій змінній (назвемо „Itog”) буде зберігатись результат обчислення. Ім'я змінної задає програміст. Як правило, змінну оголошують англійською мовою з великої букви. Називають змінну так, щоб її назва несла інформацію про дані, які будуть в ній зберігатись. Наприклад, змінну, в якій буде зберігатись курс долара, ми назвали Kurs. Змінну в програмі оголошують один раз – спочатку програмного коду. Недопустимо оголошення двох однакових змінних різних типів. Якщо декілька змінних мають однаковий тип, їх оголошують в одному рядку через кому.
1. Що називають подією?
2. Коли почне виконуватися програмний код?
3. Коли виникає подія Click?
4. Коли виникає MouseDown?
5. Коли виникає MouseUp?
6. Коли виникає MouseMove?
7. Коли виникає KeyDown?
8. Коли виникає KeyUp?
9. Коли виникає FormCreate?
10. Коли виникає Close?
11. Які питання потрібно вияснити , перш ніж написати програмний код?
12. Як вивести вікно програмного коду?
13. Що таке процедура обробки події?
14. Де в процедурі вписують програмний код?
15. Що таке змінна?
16. В якій частині програмного коду оголошують змінну?
17. Як оголосити числову змінну типу Real?
18. Як оголосити числову змінну типу Integer?
1. Відкрийте проект, збережений при виконанні попереднього практичного завдання
|
|
Тепер, коли всі змінні оголошені, можна писати програмний код. Щоб вивести вікно програмного коду, треба двічі клацнути лівою кнопкою мишки по об'єкту, який запускає обчислення. В нашій програмі запускати роботу програми будуть два об'єкти - кнопка Button1 запускає розрахунок долари в гривні, а кнопка Button2 запускає розрахунок гривні в долари. Напишемо зразу код обчислення долари-гривні. Запускає розрахунок долари в гривні кнопка Button1. Клацнемо двічі лівою кнопкою мишки по кнопці Button1 – з'явиться вікно програмного коду:
Нам потрібно між словами begin та end; вписати рядки нашого програмного коду.
Необхідно, щоб програма:
- зчитала з першого текстового поля курс долара і присвоїла його значення змінній Kurs, потім зчитала з другого текстового поля суму грошей і присвоїла їх значення змінній Suma,
- потім обчислила суму грошей і присвоїла її значення змінній Itog, і нарешті вивела значення змінної Itog на третє текстове поле.
Необхідно, щоб програма зчитала з першого текстового поля курс долара і присвоїла його значення змінній Kurs. Отже, рядок цього програмного коду буде мати такий вигляд:
|
|
Ще раз повторю словами те, що ми написали мовою Lazarus: змінній Kurs присвоїли
перетворене в число значення, введене в текстове поле Edit1.
Тепер нам потрібно, щоб програма зчитала з другого текстового поля суму грошей і присвоїла їх значення змінній Suma. Це буде так:
6. Напишіть рядок програмного коду присвоєння змінній Itog обчисленої суми грошей
Itog = Kurs * Suma;
7. Виведіть значення змінної Itog на мітку:
Тепер частина цього програмного коду буде мати такий вигляд:
procedure TForm1.Button1Click(Sender: TObject); begin
Kurs:=StrToFloat(Edit1.Text);
Suma:=StrToFloat(Edit2.Text);
Itog:=Kurs*Suma;
Label4.Caption:=FloatToStr(Itog)+' грн'; end;
8. Запустіть програму на виконання .
Зверніть увагу, що при натисканні на кнопку Button2 нічого не відбувається (не написаний програмний код).
Приклад роботи програми:
розрахунку гривень в долари:
procedure TForm1.Button2Click(Sender: TObject); begin
Kurs:=StrToFloat(Edit1.Text);
Suma:=StrToFloat(Edit2.Text);
Itog:=Suma/Kurs;
Label4.Caption:=FloatToStr(Itog)+' дол'; end;
Приклад роботи програми:
17 Виведення інформації в декілька рядків в циклі.
Даний приклад показує, як в циклі вивести інформацію на об’єкт TMemo. Будемо демонструвати це на прикладі табуляції функції.
Завдання слідуюче:
З умови видно, що нам потрібно два об’єкти для введення даних, один об’єкт для виведення даних, кнопка для запуску обчислення. Також нам потрібно три змінних типу Integer для зберігання введених користувачем меж табуляції та присвоєння значення змінній х функції, одна змінна типу Real для зберігання результатів обчислення.
4. Напишіть програмний код:
Запускає обчислення , виводемо подвійним клацанням по ньому вікно програмного коду.
Зверніть увагу на складання рядка для виведення на
Для цього запускаємо Word, створюємо в ньому компактно в декілька рядків текст завдання, у формульному редакторі створюємо формулу. Потім копіюємо знімок екрану до буфера обміну кнопкою Preent Screen. Запускаємо редактор Paint, вставляємо до нього копію екрану. Виділяємо фрагмент із потрібним нам текстом з формулами, активуємо команду «обрезать». Потім зберігаємо фрагмент. Створюємо на формі об’єкт TImage та вставляємо до нього щойно збережений графічний файл.
Результат роботи програми:
1. Для чого призначений об’єкт TMemo?
2. Як вивести рядок тексту на об’єкт TMemo?
3. Як у циклі вивести інформацію на об’єкт TMemo?
4. Запишіть програмний код виведення на TMemo: «При Х= значення змінної Х У= значення змінної У»
5. Як перенести з редактора Word Текст із формулами до проекту?