Меню сайту
Реклама
Категорії розділу
Архітектура ПК
[1]
Архітектура та експлуатація персонального комп'ютера
|
СПЗ
[12]
Системне програмне забезпечення та операційні системи
|
Комп'ютерна графіка [25] |
КСМ
[28]
Комп'ютерні системи та мережі
|
ІСІТО
[1]
Інформаційні системи і технології обліку
|
Бухгалтерський облік [0] |
АМтП
[10]
Алгоритмічні мови та програмування
|
Копирайт рерайт [1] |
СУБД
[18]
Системи управління базами даних
|
ОКТ практикум
[2]
Основи комп'ютерних технологій практикум
|
Інформатика (практ)
[1]
інформатика практикум, практичні заняття
|
ТіОБВ
[61]
Технологія і організація будівельного виробництва
|
ОСАПр
[6]
Основи систем автоматизованого проектування, AutoCAD, ArchiCAD
|
ТіОБВ (заочники) [1] |
Пошук
Головна » 2013 Вересень 24 » Використання візуальних компонентів у Delphi
11:30 Використання візуальних компонентів у Delphi |
Загальна характеристика візуальних компонент Компоненти є візуальні та невізуальні. Невізуальні компоненти характеризуються тим, що при роботі програми їх не видно. Візуальні компоненти називаються елементами керування. Усі компоненти Delphi є нащадками класу TComponent. Велику кількість класів містить бібліотека візуальних компонент (Visual Component Library, VCL). Для усіх компонент в бібліотеці візуальних компонент VCL базовим є клас TControl. В цілому візуальні компоненти можна розділити на дві великих групи: віконні та невіконні елементи керування. Для віконних елементів керування базовим класом є TWinControl – прямий нащадок класу TControl. Віконний елемент керування представляє собою спеціалізовані засоби Windows, які призначені для створення вікон та обробки повідомлень Windows. Віконні елементи керування містять дескриптор (визначник) вікна (window handle). Дескриптором вікна в операційній системі Windows називається 32-бітна величина, яка однозначно визначає дане вікно. Програма використовує цей дескриптор для звернення до вікна. До таких елементів відносяться, наприклад, кнопки, перемикачі, текстові поля, однорядкові та багаторядкові редактори, прокрутка і т.п., а також різні панелі та елементи групування, в яких розміщуються інші компоненти. Тобто віконні елементи керування можуть містити інші елементи керування, виступаючи у ролі класу-контейнера, що є первинним по відношенню до об’єктів, які в ньому знаходяться. Причому контейнер разом з елементами керування, які в ньому знаходяться, розглядається у Windows як єдине ціле. Для невіконних елементів керування базовим є клас TGraphicControl, який є похідним від класу TControl. Невіконні елементи керування не можуть бути контейнерами інших елементів користувацького інтерфейсу. Перевагами невіконних елементів керування по відношенню з віконними є менший розхід ресурсів, оскільки для них не потрібен дескриптор вікна. Невіконними елементами керування є елементи графічного типу, наприклад, мітки, геометричні фігури, рамки, зображення, панелі для малювання. Загальні властивості візуальних компонент Керування положенням компоненти на екрані і її розмірами виконується за допомогою властивостей: Left – горизонтальна координата лівого верхнього кута; Top – вертикальна координата лівого верхнього кута; Width – ширина; Height – висота. Для усіх компонент дані властивості задаються в пікселях відносно координат клієнтської частини батьківської компоненти (клієнтською частиною компоненти називається її внутрішня область, за виключенням заголовка, рамки і меню). Зміна значень даних властивостей є можливою як на етапі конструювання, так і на етапі виконання програми. Спосіб вирівнювання елемента керування всередині своєї батьківської компоненти задає властивість Align. Можливі різні варіанти вирівнювання. Колір і стиль заливки елемента керування задається властивістю Brush, яка є доступною лише під час роботи програми і лише для читання. Колір фону більшості елементів керування задається властивістю Color, яка є доступною як на етапі конструювання. так і на етапі роботи програми. Ефект тривимірного зображення елементів керування віконного типу забезпечує властивість Ctl3D. Текст короткої підказки, яка спливає при наведенні миші встановлюється властивістю Hint, а властивість ShowHint визначає чи буде дана підказка відображатися на екрані в момент виконання програми. Текст, який розміщується на елементі керування задається властивістю Text або Caption. Властивість Visible дозволяє керувати відображенням елемента на екрані (якщо значення True, то компоненту видно). Усі елементи керування мають властивість Enabled, яка керує доступністю компоненти в певний момент часу. Іншими словами, дана властивість визначає, чи повинен цей елемент реагувати на події клавіатури, таймера чи миші. При значенні даної властивості False елемент керування вважається відключеним і зображається сірим кольором. У властивості Parent міститься посилання на батьківський елемент керування, який вміщає даний елемент. Властивості ParentColor, ParentFont, ParentShowHint, ParentCtl3D використовуються для сумісності з батьківськими елементами. Фокус З усіх елементів керування, які розміщені на формі, у процесі роботи програми одна компонента завжди відрізняється від інших. Цей елемент називається активним і може бути лише елементом віконного типу. Якщо елемент активний, то він має фокус. На отримання фокусу введення віконні елементи керування можуть реагувати двома способами: за допомогою курсору редагування або за допомогою прямокутника фокусу. Такі компоненти, як редактори Edit, DBEdit, Memo або DBMemo при отриманні фокусу введення відображають у своїй області курсор редагування (текстовий курсор). Компоненти, не пов’язані з редагуванням тексту, отримання фокусу введення відображають, як правило, за допомогою пунктирного чорного прямокутника. За допомогою клавіші Tab фокус почергово переходить до кожного об’єкта форми. Для того, щоб елемент керування став активним, необхідно, щоб виконувались наступні умови:
Зауважимо, що фокус можуть мати лише елементи віконного типу. Методи візуальних компонент Наступні методи є загальними для віконних елементів керування. Процедура SetFocus встановлює фокус введення на віконний елемент керування. Якщо елемент керування в даний момент часу не може отримати фокус введення (він знаходиться у виключеному стані), то виникає помилка. Перевірити можливість активації компоненти дозволяє функція CanFocus:Boolean, яка повертає значення True, якщо елемент може отримати фокус введення, і False – у протилежному випадку. Метод Clear служить для очищення вмістимого компоненти, яка може містити текстову інформацію. Наприклад, ListBox1.Clear; Memo1.Clear; Метод Refresh використовується для оновлення елементу керування і виконує стирання зображення на елементі керування та його перемалювання. Як правило, метод викликається автоматично при необхідності перемалювання зображення. Виклик методу Refresh програмним способом використовується, коли програміст сам керує малюванням області візуальної компоненти, наприклад, списку ListBox. Метод Refresh автоматично викликає методи Invalidate та UpDate. Метод Invalidate повідомляє Windows, що зображення треба перемалювати. При першій можливості система виконає цю операцію. Метод UpDate забезпечує негайне перемалювання вказаного об’єкта. При необхідності ці методи можна викликати безпосередньо у програмі. Метод Perform призначений для посилання повідомлень віконним елементам керування. Форма як головна компонента програми Форма в Delphi являє собою видиме вікно Windows і є основною частиною практично будь-якої програми. Терміни ”форма” і ”вікно” є синонімами. У формі розміщуються візуальні компоненти, які утворюють інтерфейсну частину програми, і системні (невізуальні) компоненти. Таким чином, форма є контейнером для усіх інших компонент. Для роботи з формою призначена компонента Form класу TForm. Зі створення форми починається конструювання програми. Будь-яка форма може створюватись автоматично або програмно. Головна форма завжди створюється автоматично. Система Delphi при утворенні нової форми автоматично, з використанням методу Create, створює екземпляр класу (FormN), вносячи відповідні зміни у файл проекту (.dpr). Тобто у файлі проекту з’являється оператор: Application.CreateForm(TFormN,FormN); де TFormN – клас N–ї форми, FormN – N-а форма. Програма може мати декілька форм, одна з яких є головною і при запуску програми відображається першою. При конструюванні програми зручно вказувати головну форму у вікні параметрів проекту, яке відкривається командою Project\Option. Головна форма вибирається у списку Main Form на сторінці Form, після чого Delphi автоматично вносить відповідні зміни у файл проекту. З усіх створених форм Delphi при виконанні програми автоматично робить видимою головну форму, встановивши значення True властивості Visible цієї форми. Для решти форм значення даної властивості за замовчуванням рівне False, і після запуску програми вони на екрані не відображаються. Щоб зробити форму видимою, необхідно через Інспектор об’єктів властивості Visible надати значення True, або зробити це при виконанні програми за допомогою оператора: FormN.Visible:=True, де FormN – ім’я форми. Форма може бути модальною і немодальною. Немодальна форма дозволяє без її закриття переключитись на іншу форму програми. Модальна форма вимагає обов’язкового закриття перед звертанням до будь-якої іншої форми програми. Форми, які відображають різні повідомлення і вимагають від користувача введення інформації, називають діалоговими вікнами. У свою чергу, діалогове вікно також може бути немодальним або модальним. У Delphi 7 є 11 компонент, які знаходяться на сторінці Палітри компонент і реалізують діалогові вікна загального призначення для виконання таких операцій як відкриття, збереження, друк файлів і т.п., тому їх часто називають стандартними. Як і будь-яка інша візуальна компонента, форма має властивості, методи і події, загальні для усіх візуальних компонент. Поряд з ними у форми є специфічні властивості, методи та події. Деякі з них характеризують форму як головний об’єкт програми. Шаблони форм Деколи краще вибрати шаблон форми до конкретної ситуації, чим використовувати порожню форму. Зберігати форми та інші об’єкти у якості шаблонів дозволяє Сховище об’єктів (Repository). Це вікно New Items, яке викликається командою File\ New\ Other. Різні сторінки Сховища об’єктів містять шаблони таких форм:
Крім шаблонів форм, Сховище об’єктів має шаблони програм, звітів, а також декілька Майстрів (Wizard) – спеціальних програм-утиліт, які полегшують створення форм для роботи з базами даних, з веб-оглядачем та для побудови діаграм. Матеріал взято з сайту http://ruh.znaimo.com.ua/index-18932.html |
|
Всього коментарів: 0 | |