Основи візуального проектування в середовищі Delphi
Замість передмови до Delphi
Для багатьох людей мови програмування, такі як C++, є такими ж недоступними, як класична грецька мова. Чи існує менш виснажливий спосіб писати якісне програмне забезпечення для Windows?
Так. Саме разом з Delphi ви відчуєте себе впевненими у програмуванні для Windows. Названа як система швидкої розробки додатків, або ж RAD, Delphi є генератором ефективного коду, конструктором візуальних додатків і інструментом для баз даних, який є легким в опануванні і водночас потужнім у використанні.
Для опанування Delphi у наших рамках зовсім не потрібно бути фахівцем в галузі computer science, та якщо ви знаєте Pascal, C, C++, або Visual Basic, це Вам стане у пригоді. Чисельні покрокові інструкції демонструватимуть вровадження візуальних компонент у мову Object Pascal.
Вимоги до комп”ютера
На сьогоднішінй день вийшло вже шість версій інструментальної системи Delphi. І хоча найпопулярнішою версією ще залишається Delphi 5, часто використовуються і більш ранні версії, всеж слід орієнтуватися на найновішу версію.
Для опанування даного розділу вам необхідна інсталяція на комп”ютері редакцій Delphi 5 таких як Desktop або ж Client/Server; або редакцій Delphi 6, таких як Personal, Professional або Enterprise. Головна їх відмінність – об’єм бібліотек візуальних компонентів, а також можливості щодо створення сучасних додатків – дляроботи з базами даних, Інтернетом, клієнт-серверними технологіями.
Для найбільш потужної редакції Delphi 6 Enterprise вимоги до комп’ютера такі:
· Персональний комп”ютер з процесором Pentium 166 МГц (рекомендується Pentium ІІ 400 МГц).
· Об’єм оперативної пам”яті 64 MB (рекомендується 128 MB).
· Об’єм вільного місця на жорсткому диску 350 MB або більше (мінімум 115 MB).
· Дисплей SVGA і маніпулятор “миша”.
Редакції Delphi 6 Personal та Delphi 6 Professional мають дещо менші вимоги щодо об’єму дискового простору – 160 MB (мінімум 75 MB) та 260 MB (мінімум 105 MB) відповідно. Мінімальні вимоги Delphi 5 щодо комп’ютера практично такі ж самі, як і для Delphi 6 Personal, а рекомендовані – як і для Delphi 6 Professional.
Візуальне середовище Delphi
Як і для більшості програмного забезпечення, найкращий шлях для вивчення Delphi є шлях його використання. Зараз ми спробуємо проаналізувати візуальне середовище Delphi. Запустимо або ж перейдемо у Delphi. Малюнок показує Delphi, що працює у Windows 98. Якщо ж Ваш екран не нагадує малюнку, виберіть команду File New Project.
Існує кілька головних елементів інтегровного середовища розробки Delphi (integrated development environment, IDE). починаючи із верхнього лівого кута на малюнку і продовжуючи за годинниковою стрілкою цими елементами є:
Головне меню – це є стандартне меню у стилі Windows (мал. 1, 2).
Палітра компонент – ця палітра включає позначки (іконки), що представляють компоненти у VCL (мал. 1, 4). Клацніть кнопку на Палітрі компонент, щоб вибрати візуальний компонент, а потім клацніть мишкою всередині вікна форми, щоб вставити об”єкт компоненту. Перемістіть курсор мишки над довільною кнопкою компоненту але не клацайте кнопку миші. Через деякий час Delphi виведе підказку з іменем компоненту. Перемістіть мишку, щоб переглянути підказки інших компонент. Цим методом можна скористатися для знаходження довільних компонент.
Закладки сторінок палітри – щоб переглянути інші категорії компонент, клацніть одну із закладок на палітрі VCL. Наприклад, клацніть закладку сторінки Dialogs, щоб вивести компоненти Delphi типу діалогове вікно.
Форма – у більшості додатків форма є візуальним представленням головного вікна програми (мал. 1, 7). Однак, форма може також представляти інші вікна – наприклад, діалогове вікно, або ж вікно нащадка у програмному забезпеченні, що грунтується на багатодокументному інтерфейсі (multiple document interface, MDI). Прості програмки можуть мати лише одну форму; складні додатки можуть мати десятки. Сітка на формі допоможе Вам вирівняти компоненти, вставлені у вікно форми. Ця сітка не з”явиться у кінцевому додатку.
Вікно модуля – це вікно показує текст програмування, виконаного на Pascal, що пов’язаний із кожною формою додатку (мал. 1, 6). Delphi автоматично створює це програмування, до якого ви можете додавати Pascal-твердження, що виконують дії для подій, таких як клацання по коммандах меню або кнопках. Це вікно ви можете використовувати також для редагування інших Pascal-модулів і текстових файлів. Для вибору відкритого файлу клацніть відповідну закладку сторінки зверху вікна модуля.
Закладки сторінок Property та event – клацніть одну з цих закладок сторінки зверху вікна Object Inspector, щоб перейти до властивостей чи подій компоненту або форми. Закладка property представляє атрибут компоненту, такий як розмір кнопки або ж шрифт текстової мітки. Закладка event представляє дію, таку як клацання мишкою або ж натискання клавіші.
Інспектор об”єктів (Object Inspector) – це вікно показує усі властивості і події для одного або більше вибраних компонент або форм. Вікно Object Inspector є одним з найважливіших інструментальних знарядь Delphi (мал. 1, 5).
Швидкі кнопки – це є кнопки типу “вкажи-і-клацни” для вибору команд меню (мал. 1, 3). Так, як і на палітрі компонент, ви можете вивчити, що кнопка робить, викликаючи підказку з іменем кнопки. Використання цих кнопок веде до економного витрачання часу. Наприклад, хоча існують інші шляхи для запуску програм, найшвидшим методом є клацання швидкої кнопки Run (трикутник, що вказує праворуч).
В подальшому ви дізнаєтеся більше про кожне з вікон Delphi, команди та інші можливості. Ви також познайомитеся з багатьма іншими вікнами, такими як диспетчер проекту, огляд об”єктів (object browser), інтегровний відлагоджувач, редактор коду, редактор малюнків, конструктор меню.
Приготування для нового додатку.
Перший крок після початку нового додатку – це надати йому ім”я. Найкраще це зробити безпосередньо після виконання File – New Project. Найменування нового проекту настільки швидко, як це можливо запобігає від збереження проекту у вдасних каталогах Delphi під іменами файлів за припущенням, що призводить до нерозумного витрачання дискового простору і може спричинити проблеми через спосіб, в який Delphi використовує ім”я файлу модуля, щоб створити програмні твердження та оголошення.
Типовий проект Delphi складається з файлів кількох типів. Деякі файли містять текст, інші містять двійкові значення, “бітмапи” і виконуваний код. Оскільки кожен додаток складається з багатьох файлів, розумно створити окремий каталог на вашому жорсткому диску для кожного нового проекту. В такому разі ви зможете легко копіювати файли додатку на гнучкий диск або мережевий пристрій для резервного зберігання а також ви знищувати старі додатки, просто знищивши їх каталоги.
Виконавши наступні дії ви створите ваш перший додаток в Delphi:
1. Використовуючи Explorer для Windows 95 створіть новий каталог C:\Projects для зберігання проектів. Виберіть цей же каталог і створіть його підкаталог на ім”я Hello. Цим ви створите шлях C:\Projects\Hello для зберігання файлів проекту.
2. Виберіть File New Project. Якщо в цей час вже завантажено і змінено інший проект, Delphi надасть вам можливість зберегти проект або ж усунути внесені зміни. Якщо ви побачите діалог Confirm, виберіть Yes щоб зберегти попередній проект, або ж No – щоб усунути внесені зміни.
3. Виберіть File – Save Project. У діалозі типу file-save, що з”явиться змініть каталог на C:\Projects\Hello, що ви створили на першому кроці, і введіть main у поле File Name. Щоб зберегти форму у текстовому файлі під іменем Main.Pas, клацніть кнопку OK або натисніть Enter. Delphi автоматично дописує розширення імені файлу .Pas, що вказує на файл, що містить програмування, здійснене на Pascal.
4. Далі Delphi запросить ім”я проекту в іншому діалозі типу file-save. Введіть hello у поле File Name і виберіть OK або натисніть Enter. Цим ви створите головний файл проекту Hello.Dpr. Delphi аавтоматично надає розширення імені файлу .Dpr, яке вказує на проект Delphi.
Якщо ж Delphi не запросить ім”я проекту на 4-му кроці, найімовірніше, що ви помилково вибрали команду File – Save File, яка зберігає лише один файл. Якщо це трапилося, повторіть кроки 3 і 4 та наточно виберіть команду File Save Project.
Збереження проекту в окремому каталозі перед додаванням будь-якого програмного коду, зробить модулі вашого додатку добре організованими. Щоб досягти кращих рузультатів ніколи не зберігайте кілька проектів в одному каталозі.
Задання надпису вікна
За припущенням, Delphi надасть формі-вікну проекту Hello надпис Form1. Надпис з”являється у рядку заголовку під верхньою рамкою вікна. За допомогою наступних кроків можна змінити надпис на заголовок програми.
1. Зверху вікна Object Inspector клацніть закладку сторінки Properties. Щоб вивести властивості форми програми.
2. Виберіть властивість Caption. (Вона вже може бути вибрана за припущенням).
3. Щоб змінити властивість, просто введіть або виберіть нове значення у стовпчику проаворуч від назви властивості. Наприклад, змініть значення Caption з Form1 на Hello Delphi Programmer! Просто розпочніть введення – вам не потрібно помічати текст перед цим. Вам також не потрібно натискати Enter після введення. Якщо ви все ж натиснули Enter, поле просто помітиться ще раз. Зверніть увагу, що надпис вікна форми змінюється одночасно із введенням нового значення.
4. Збережіть проект, вибравши команду File – Save Project. Оскіль ви вже надали імена файлів, Delphi виконає цю команду безпосередньо – тобто, не виведе діалогу типу file-save. (Щоразу, коли ви додаєте нову форму до проекту, ви будете бачити цей діалог знову, коли ви зберігатимете проект).
Зауваження. Ви можете зберегти проект, натиснувши “швидку” кнопку Save project. (Це швидше ніж вибирати команду File Save Project).
Запуск додатку
Вірите в це ви чи ні, але ви вже закінчили програмування вашого першого додатку Delphi. Щоб закінчити процес розробки і запустити програму, виконайте такі кроки:
1. Натисніть F9, або виберіть команду Run з меню Run. Або ж клацніть швидку кнопку Run. Пробуйте запускати ваш додаток багаторазово підчас його розробки, щоб випробувати нові програмні твердження. Вам не слід завершити проект до того, як можна буде його запускати.
2. Після кількох секунд на екрані з”явиться вікно вашого першого додатку.
3. Щоб вийти із додатку, клацніть кнопу закриття вікна у правому верхньому куті. Якщо вам більше до вподоби клавіатура, натисніть Alt+F4 щоб закрити додаток і повернутися у Delphi.
Після запуску додатків із середовища, завжди слід закривати їх щоб повернутися в режим програмування. Якщо ви помилково залишите додаток відкритим, ви не зможете вибрати багато команд Delphi. Отже, якщо Delphi починає не відповідати на команди, одна з причин, що може бути – працюючий додаток, що ви забули закрити.
Натисніть F9, щоб перезапустити Hello. Зверніть увагу, що на цей раз вікно додатку з”явиться швидше, ніж ви вперше запускали програму. Delphi знає, що ви не зробили жодних змін у проекті, отже вона просто перезавантажить файл коду додатку. Закрийте зараз вікно програми Hello.
Ви також можете використовувати Windows 95 Explorer, щоб запустити додаток Delphi. Наприклад, відкрийте Explorer і виберіть каталог C:\Projects\Hello. Двічі клацніть Hello.Exe або помітьте це ім”я файлу і натисніть Enter. Не забудьте закрити програму, щоб продовжити роботу.
Використайте Windows 95 Explorer, щоб запустити кілька екземплярів (інстанцій) даного додатку. Наприклад, спробуйте запустити дві або більше копій Hello. Ви можете запускати лише один екземпляр програми з Delphi. Щоб запустити кілька екземплярів, ви повинні скористатися Explorer. Закрийте усі примірники Hello, щоб продовжити роботу далі.
Додаток Delphi це повнофункціональна програма для Windows – ви запускаєте його таким же чином, як ви запускаєте інші додатки. Ви можете клацати і претягувати файл коду додатку на робочий стіл і тоді двічі клачати одержану іконку. Або ж ви можете запускати додаток, вказавши ім”я файлу його коду у команді Run системного меню Windows 95.
Компіляція та зв”язування (лінкування) коду
Коли ви запускаєте додаток, натискаючи F9, Delphi компілює і зв”язує програму, щоб створити файл виконуваного коду. Тут відбуваються дві ключові події. По-перше, компілятор Delphi переводить текст програми у двійковий код. Далі лінкувальник (програма, що з”єднує) комбінує цей код з іншими модулями, які вимагаються для дій запуску програми та інших задач. Результатом компіляцій та зв”язування проекту Delphi є завершений файл виконуваного коду, який має те ж ім”я, щой проект, але розширення імені цього файлу -.Exe.
На відміну від інших систем візуального програмування, Delphi генерує дійсно природній код, що означає те, що кінцева програма не вимагає інтерпретатора під час виконання. .Exe-файл коду завершений на 100%. Лише цей файл ви повинні надавати споживачам вашої програми.
Щоб зкомпілювати та зв”язати додаток, але не запускати його, натисніть Ctrl+F9 або виберіть команду Compile – Syntax Check. Ви можете скористатися цими методами, щоб перевірити, що програма не містить помилок таких, як “описка”.
Програмування за допомогою компонент
Перед тим, як іти далі, давайте зупинимося і зробимо короткий огляд. Зараз ми вже навчилися робити в Delphi три важливі речі:
Створювати та зберігати новий проект.
Змінювати властивість, таку як Caption для форми Delphi.
Компілювати. Зв”язувати і запускати додаток, натискаючи F9.
Ми використовуватимемо ці методики при написанні кожного нового доодатку. Звичайно, програми, які не роблять нічого, окрім виведення заголовку, не приносять жодної користі. Для того, щоб додаток Hello міг щось виконувати, ви можете вставити візуальний компонент у вікно програми, про що піде мова далі.
Вставка візуальних компонент
За допомогою наступних кроків здійснюється вставка об”єкту візуального компоненту у вікно програми Hello:
1. Закрийте працюючу програму Hello. Якщо слід повернутися у Delphi. Виберіть File – Open Project або клацніть “швидку” кнопку Open project. (Зробіть це для набуття досвіду, навіть, якщо Hello вже відкрито). Коли з”явиться діалог Open Project, змініть при потребі каталоги і виберіть Hello.Dpr. Натисніть Enter або клацніть OK, щоб вибрати проект. (За допомогою цього методу будуть відкриватися будь-які проекти. На цьому місці ви можете припинити роботу, зберегти проект і потім перезавантажити його, коли будете готовими продовжити).
2. Клацніть закладку сторінки Standard на палітрі компонент і потім виберіть компонент Button, на якому знаходиться позначка Ok.
3. Перемістіть вказівник миші у форму, а потім клацніть один раз, щоб вставити об”єкт Button у вікно. Точне розміщення не має значення.
4. Переконайтеся, що вибрано об”єкт Button – ви повинні бачити довкола нього квадратні керма (хендли). Якщо об”єкт не вибрано – клацніть його ще раз. За припущенням, Delphi надасть об”єкту ім”я Button1. Щоб надати більш опосередковану назву, виберіть влативість Name у вікні Object Inspector (вона може вже бути вибрана) і наберіть CloseButton. Це одне слово – в імені об”єкту не можна набирати пропусків. Натисніть Enter.
5. Зверніть увагу, що властивість Caption та текст кнопки також зміниться у CloseButton. Це нормально, але в багатьох випадках, ви бажатимете, щоб властивості об”єкту компоненту Name та Caption відрізнялися. У цому випадку, наприклад, виберіть властивість Caption, і наберіть Close.
6. При потребі одинраз клацніть об”єкт CloseButton. Виберіть закладку сторінки Events зверху вікна Object Inspector, яка наводить список усіх дій, що може виконати кнопка. Двічі натисніть порожнє місце праворуч події OnClick. У вікні модуля з”явиться Main.Pas і Delphi помістить мерехтливий курсор між ключовими словами begin та end. Наберіть наступне твердження:
Close;
7. Щойно ви запрограмували процедуру, що називається обробником події для події кнопки OnClick. Переконайтеся, що завершили це твердження символом “;”. Порівняйте текст у Вашому вікні із листингом у додатку.
8. Збережіть проект і потім запустіть його натиснувши F9. Зараз ви можете натиснути кнопку OK щоб закрити вікно. Оскільки це головне вікно програми, то його закриття також завершує додаток..
Команда File – Open File відкриває індивідуальні файли. Щоб завантажити завершений додаток Delphi, завжди використовуйте File – Open Project або клаційте “швидку” кнопку Open project.
t
Попередні кроки продемонстрували три важливих аспекти програмування з Delphi:
Ви вставляли об”єкт компоненту Button у вікно форми.
Ви модифікували властивості об”єкту, щоб змінити їх внутрішні значення Name та Caption.
Ви запрограмували одну з подій об”єкту, щоб втконати дію під час виконання у відповідь на вибір кнопки.
Інтерфейс Delphi і усі її компоненти, окрім елементів керування VBX (компоненти, вперше розроблені для Microsoft Visual Basic і написані на мові C++) були написані з використанням Delphi. Це справжній доказ складності задач, які дана інструментальна система дозволяє розв”язати.
Відлагодження програмних речень.
Відлагодження – виявлення помилок кодування.
Відлагодження – це, напевно, найскладніший період розробки додатку. Програмісти витрачають багато часу на виявлення так званих bugs (“жучків”). Звичайно, щоDelphi не може запобігти появі таких “жучків”, але вона може допомогти уникнути багатьох типових помилок, надаючи вам потужнє візуальне середовище, що автоматично створює більшість вашого додатку. На жаль, все ще залишається багато простору для помилок і тому нечесно сказати, що процес розробки додатків в Delphi повністю гладкий.
Команди відлагодження Delphi також користні для дослідження того, як програма працює. За допомогою наступних кроків ви дізнаєтеся, як використати деякі можливості відлагодження у Delphi.
1. При потребі відкрийте проект Hello.
2. Якщо ви ще не вставили кнопку Close у форму, зробіть це зараз за допомогою попередніх інструкцій.
3. Знайдіть процедуру TForm1.CloseButtonClick у вікні модуля Main.Pas. Вставте речення вище Close, щоб вивести повідомлення. Дві стрічки між begin та end повинні виглядати так:
ShowMessage(‘На цьому робота з додатком завершеється’);
Close;
4. За звичайних обставин ви натискаєте F9, щоб відкомпілювати, злінкувати та запустити програму. Цього разу натисніть F8, щоб вибрати команду Delphi Step Over. Коли з”явиться головне вікно, клацніть кнопку Close. Замість завершення програми Delphi робить у ній паузу всередині процедури CloseButtonClick. Це приклад покрокового проходження програми, одного з найважливіших засобів дослідження, що ви можете використати під час розробки програми.
5. Натисніть F8 ще два рази, щоб перейти через речення ShowMessage і виконати його. Віконце з кнопкою OK з”явиться на екрані. Клацніть цю кнопку. Знову, оскільки ви натиснули F8, Delphi зробить паузу у програмі на натупному реченні, а саме Close.
6. Натисніть F9, щоб виконати речення Close і виконати програму до кінця. Після натискання F8 для покрокового проходження одного або більше тверджень ви, переважно, завершуватимете програму натиснувши F9.
Інший спосіб крокування програмою полягає у встановленні точки зупинки. Коли програма досягає поміченого речення, Delphi зупиняє додаток перед виконанням цього твердження. За допомогою наступних дій ви ставитимете точку зупинки і проходимете через програму.
1. Перемістіть мерехтливий курсор у речення ShowMessage у Main.Pas і виберіть Run – Add Breakpoint. Клацніть кнопку New у діалозі, що з”явиться або просто натисніть Enter. Помічене речення зараз помітиться червоним кольором.
2. Натисніть F9 щоб запустити програму. Коли ви натиснете кнопку Close, Delphi призупинить код на поміченому реченні. Натисніть F8 щоб далі іти покроково і вивести повідомлення. Закрийте діалог повідомлення, клацнувши кнопку OK і натисніть F9 щоб запустити програму на завершення.
3. Спробуйте 2-й крок ще раз але цього разу натисніть для завершення програми Alt+F4. Оскільки цим ви не виконуєте процедуру CloseButtonClick, то програма завершується без паузи на точці зупинки.
4. Завжди намагайтеся запустити програму для завершення. Якщо вам це не вдається, виберіть Run – Program Reset і запустіть знову. Це може спричинити переривання процедур, знищення різних ресурсів з пам”яті, що можливо заставить вас вийти і перезапустити Windows.
5. Щоб встановлювати чи знімати точки зупинки, помістіть вказівник миші у крайню ліву позицію напроти поміченого речення і клацніть один раз ліву кнопку. Це – найлегший спосіб встановлення точки зупинки. Ви можете також використовувати команду View – Breakpoints щоб додавати, знищувати, відміняти і виконувати інші дії над точками зупинки. Виберіть цю команду і клацніть правою кнопкою миші у вікні Breakpoint list щоб отримати список наявних команд.
Листинг : Обробник події OnClick об”єкту CloseButton.
procedure TForm1.CloseButtonClick(Sender: TObject);
begin
Close;
end;