- •Лекція №1.
- •Тема 1. Історичний і соціальний контекст програмування. Загальні принципи розробки програмних продуктів.
- •2. Застосування функцій Application Program Interface (api) для розробки програм для Windows.
- •3. Загальні відомості про об’єктно-орієнтоване програмування та автоматизацію проектування, програми програмування для Windows.
- •Лекція №2.
- •Тема 2. Введення у програмне середовище візуального програмування
- •Властивості компонентів.
- •Лекція №3.
- •2. Застосування модулів при програмуванні. Загальний вміст файлу модуля Unit1.Cpp .
- •Лекція №4.
- •Тема 4. Візуальне програмування компонентів при створенні програми.
- •Структура vcl.
- •Клас tObject.
- •Клас tPersistent.
- •Клас tComponent.
- •Клас tControl.
- •Клас tForm.
- •Клас tTimer.
- •Клас tStrings.
- •Клас tStringList.
- •Клас tFont.
- •Властивості.
- •Значення властивостей.
- •Типи властивостей.
- •Методи.
- •Лекція №5.
- •Тема 5. Подійно-орієнтована взаємодія між компонентами при створенні програми.
- •1. Взаємодія між компонентами та діями користувача при створенні програми та подальшого її використання.
- •2. Характеристика основних подій що виникають з об’єктами: OnActivate, OnClose, OnCreate, OnDestroy, OnHide, OnPaint, OnResize, OnShow, OnClick, OnDblClick, OnMouseDown, OnKeyDown, OnEnter та інші.
- •Лекція №6.
- •2. Змінні. Типизовані константи. Класифікація типів даних. Об’ява типів.
- •Модифікатори.
- •Користувацькі типи.
- •Розмір об’єктів.
- •3. Програмна схема опрацювання подій. Перетворення типів даних.
- •Зведення типів.
- •Основні визначення.
- •Області видимості змінних.
- •Правило одного визначення.
- •Лекція№ 7.
- •Тема 7. Об’єктно-орієнтований підхід до класів.
- •1. Об’єктно-орієнтований підхід. Об’єкт.
- •2. Взаємозв’язки об’єктів, класів. Поля та методи класів. Статичні, динамічні методи. Класи. Об’ява класу. Модель вказників. Методи. Події та вказники на методи.
- •3. Три групи методів. Інкапсуляція. Спадковість. Поліформізм. Конструктори і деструктори.
- •Розробка класів.
- •Поняття про конструктори і деструктори.
- •Лекція № 8.
- •Тема 8. Обробка виняткових ситуацій.
- •Механізм обробки виняткових ситуацій.
- •Обробка виняткових ситуацій.
- •2. Застосування виняткових ситуацій. Протоколювання виняткових ситуацій. Коди помилок в виняткових ситуаціях. Виняткова ситуація eAbort. Функція Assert.
- •Ієрархія виняткових ситуацій.
- •Тотальне перехоплення виняткових ситуацій.
- •Генерація виняткових ситуацій
- •Повторні виняткові ситуації.
- •Непередбачені виняткові ситуації.
- •Лекція № 9.
- •Тема 9. Візуальні компоненти бібліотеки vcl.
- •1. Бібліотека візуальних компонент vcl і її базові класи. Ієрархія базових класів. Класи: tObject, tPersistent, tComponent.
- •Візуальні та невізуальні компоненти.
- •2. Класи елементів керування: tControl, tWinControl, tCustomControl, tGraphicControl.
- •Клас форм tForm. Форми для головного вікна.
- •Форми для діалогових, інформаційних та інших вторинних вікон.
- •Модальні та немодальні вікна.
- •Основні властивості компонентів (форми).
- •Властивості, що доступні під час розробки та виконання програми.
- •Властивості, що доступні тільки під час виконання програми.
- •Основні методи компонентів (форми).
- •Основні події компонентів (форми).
- •Лекція № 10. Компоненти для введення та редагування тексту.
- •1. Клас tStrings. Властивості Text, Lines, Items.
- •2. Методи для роботи і текстом: AddString, AddObject, Assing, Equals, Delete, Move, IndexOf, Pos.
- •Введення та відображення цілих чисел.
- •Багаторядкові вікна редагування.
- •Компоненти вибору зі списків.
- •Компоненти – меню.
- •Панелі та компоненти зовнішнього оформлення.
- •Панелі загального призначення.
- •Багатосторінкові панелі.
- •Рядок стану.
- •Організація управління додатком. Список зображень.
- •3. Конструкції коду для обмеження типів символів. Конструкції коду для створення комбінацій клавіш.
- •Лекція № 11.
- •1. Принципи побудови баз даних.
- •Локальні і віддалені бази даних.
- •Створення форми для роботи з базами даних (вручну).
- •Створення форми для роботи з базами даних (майстром).
- •Створення бази даних.
- •Лекція № 12.
- •Тема 12. Створення баз даних за допомогою Database Desktop.
- •1. Створення нової таблиці. Задання полів. Задання властивостей таблиці. Створення псевдонімів баз даних у Database Desktop.
- •Створення нової таблиці.
- •2. Створення та редагування псевдонимів баз даних та каталогів.
- •Лекція № 13.
- •Тема 13. Компоненти, що використовуються у bde для зв’язку з базами даних.
- •Механізм доступ до бази даних. Псевдоніми dbe.
- •Компоненти доступу до баз даних.
- •Лекція № 14
- •Тема 14. Народження дочірніх процесів.
- •1. Потоки та клас tThread. Властивості класу.
- •2. Методи класу: DoTerminate, Execute, Resume, Suspend, Synchronize, Terminate, WaitFor. Технологія com.
- •Запуск зовнішньої програми функцією execlp.
- •Запуск зовнішньої програми функцією spawnlp.
- •Породження процесу функцією CreateProcess.
- •Лекція №15
- •Тема 15. Побудова багатовіконних програм.
- •1. Приклади розробки програми переглядання текстових файлів, графічних файлів, та відображення показів годинника.
- •2. Розробка графічного інтерфейсу користувача. Вимоги до інтерфейсу користувача додатків для Windows.
- •Багатовіконні додатки.
- •Стиль вікон додатку.
- •Колірне рішення додатку.
- •Шрифти текстів.
- •Лекція № 16.
- •Тема 16. Кросплатформне програмування для Linux.
- •1. Проект clx. Об’єктна концепція кросплатформного програмування. Бібліотека компонент clx. Подібність та різність візуальних компонент clx і vcl.
- •На рівні мови програмування.
- •На рівні прикладних програм.
- •Компонента модель .Net Framework. Типи компонентів.
- •Динамічна бібліотека dll як приклад компонента.
Клас tObject.
Клас TObject лежить в основі всієї ієрархії VCL, тобто клас Tobject є базовим класом \предком\ всіх класів VCL.
Він інкапсулює основні функції, властиві всім об’єктам. Клас Tobject описує основні принципи поведінки об’єктів під час роботи програми. Він забезпечує можливість створення, управління та знищення об’єктів, включаючи виділення під них пам’яті, ініціалізацію та вивільнення пам’яті після знищення. Але більшість методів класу TObject користувачами безпосередньо не використовується. В практичній роботі може знадобитися, наприклад, такий метод класу TObject, як Create() – конструктор об’єкту чи Destroy() – деструктор об’єкту.
Наприклад: коли запускається додаток, С++ Builder створює форму, викликаючи для неї метод Create().
|
void __fastcall TMainForm::FormCreate(TObject *Sender) { } |
Метод Destroy() знищує об’єкт та звільняє зайняту ним пам’ять. Необхідність у виклику Destroy() з’являється рідко. Об’єкти VCL при необхідності знищують себе самі. Проте якщо ви самостійно створили об’єкт за допомогою методу Create(), то повинні використати метод Destroy() для звільнення пам’яті та знищення об’єкту.
Всі класи VCL є прямими чи посередніми (косвенными) нащадками TObject. Пряме наслідування використовується тільки при оголошенні простих класів, об’єкти яких не є компонентами. Але більшість класів є посередніми нащадками TObject й походять від проміжних класів. Хоча формально клас TObject не є абстрактним, проте об’єкти цього класу створювати не можна.
Клас tPersistent.
Клас TPersistent є нащадком класу TObject.
Цей клас визначає здатність компонентів зберігати себе у файлах та в пам’яті; забезпечує надання значень властивостям, їхню можливість присвоюватись одна одній. Об’єкти TPersistent створюватись не можуть. Клас використовується лише для створення похідних класів.
Серед інших, зазначимо метод класу, що використовується багатьма компонентами:
метод Assign(TPersistent* Source) – копіює дані одного об’єкту в інший.
Клас tComponent.
Клас TComponent нащадок класу TPersistent. Клас TComponent є більш прямим базовим класом для всіх класів, що описують компоненти VCL. Він забезпечує функціонування всіх основних компонентів. Інкапсулює набір загальних властивостей, які притаманні кожному компоненту VCL, та деякі корисні методи. Наприклад:
Name – задає ім’я компонента, за яким в програмному коді відбувається звернення до цього компонента.
Tag – допоміжна властивість, що зберігає значення типу long integer, яке може бути використане для ваших власних цілей.
Owner – визначає власника компонента. Форма є власником всіх розташованих в ній компонентів.
Text (типу AnsiString) – текстовий рядок, зв’язаний із керуючим елементом (наприклад, компонентом редагування чи списком).
Об’єкти типу TComponent не створюються. Клас TComponent використовується як базовий, коли оголошується клас не візуального компонента, який може бути присутній в палітрі компонентів й застосовуватись в процесі програмування. Тобто, всі невізуальні компоненти створюються безпосередньо на основі TComponent.
Для створення візуальних компонентів в якості базового класу використовується клас TControl, який є похідним від TComponent, чи його нащадки.
