КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Компонент tform
Властивості форми:
Примітка Якщо в безлічі властивості BоrderIcon прибрати кнопки biMinimize: biMaximize, а у властивість WindowState помістити значення wsMaximized, форма займе весь простір екрану, включаючи нижню панель завдань. Методи форми:
Події форми:
1.3 СТВОРЕННЯ І ВИКОРИСТАННЯ ФОРМ Для підключення нової форми до проекту досить звернутися до репозиторія і вибрати потрібний різновид форми. Менеджер проекту автоматично підключає нову форму до списку використовуваних форм і забезпечує всі необхідні дії по її ініціації. Найперша підключена до проекту форма (стандартне ім'я форми - Form1) стає головним вікном програми. Вікно цієї форми автоматично з'являється на екрані у момент старту програми. Втім, програміст може вказати будь-яку форму, вікно якої стане головним. Для цього потрібно звернутися до опції Project | Options І, розкривши список Main form, вибрати потрібну форму (мал. 1). мал 1. Вікно управління проектом Кожне наступне вікно стає видно тільки після звернення до його методу show або showModal. Щоб звернутися до цих методів, потрібно послатися на об'єкт-вікно, який автоматично оголошується в інтерфейсному розділі пов'язаного з вікном модуля. Для цього, у свою чергу, головне вікно повинне знати про існування іншого вікна, що досягається посиланням на модуль вікна в пропозиції uses. Якщо, наприклад, в ході виконання одного з методів головного вікна програміст захоче викликати вікно з ім'ям fmForm, пов'язане з модулем Formunit, він повинен послатися на цей модуль в пропозиції uses головного вікна: implementation Uses FormUnit; після чого викликати вікно на екран: fmForm.Show; або fmForm.ShowModal; Delphi автоматизує вставку посилання на модуль в пропозицію uses. Для цього на етапі конструювання потрібно активізувати головне вікно, клацнувши по ньому мишею, після чого звернутися до опції File | uses unit. У діалоговому вікні (мал. 2), що з'явилося, потрібно вибрати модуль і натиснути ок. Вставляється посилання в пропозицію, що стоїть за зарезервованим словом Implementation, оскільки звичайне головне вікно в своїй інтерфейсній частині не посилається на елементи інтерфейсної частини другого вікна. Так само можна при необхідності послатися в модулі другого вікна на модуль головного вікна: активізуйте друге вікно і знов викличте опцію File | uses Unit. Відмічу, що, якщо програміст забув послатися на модуль, який підключений до проекту, Delphi при першій же трансляції програми повідомить про це і запропонує вставити бракуюче посилання. Мал. 2. Вставка посилання на модуль При виклику методу show друге вікно з'являється на екрані і працює одночасно з першим, тому управління відразу передається операторові, що стоїть за зверненням до цього методу. Такі вікна називаються немодальними, вони завжди відкриваються в одному методі, а закриваються в іншому. На відміну від цього звернення до show-Modal створює модальне вікно, яке повністю бере на себе подальше управління програмою, тому оператор за зверненням до showModal в зухвалій частині програми отримає управління тільки після закриття модального вікна. Модальні вікна завжди вимагають від користувача ухвалення якого-небудь рішення. З їх допомогою реалізується діалог з користувачем або створюється інформаційне вікно, яке користувач повинен закрити після ознайомлення з інформацією, що міститься в нім. Якщо від користувача потрібне ухвалення рішення, в модальне вікно вставляються залежні або незалежні перемикачі, кнопки і інші інтерфейсні елементи, за допомогою яких користувач зможе повідомити програму про ухвалене рішення. У момент закриття діалогу модальне вікно повинне помістити число, відповідне рішенню користувача, в свою властивість ModalResuit. Деякі стандартні кнопки (ok, Yes, No, cancel і т. п.) автоматично виконують ці дії: поміщають потрібне число в ModalResuit і закривають вікно. У інших випадках про це повинен поклопотатися програміст. Зухвала програма набуває значення ModaiResuit як значення функції showModal і може тут же його проаналізувати: if Form2.ShowModai = mrXXX then.... Можливий і такий варіант: Form2.ShowModal; if Form2.ModaiResuit = mrXXX then..... Для закриття вікна (модального або немодального) використовуються методи Hide або close. Слід врахувати, що метод Close завжди поміщає в ModalResult значення 2 (mrCancel), тоді як Hide не міняє значення цієї властивості, тому, якщо програміст хоче передати в зухвалу програму нестандартний модальний результат, слід писати: ModaiResuit:= MyResult; Hide; // Але у жодному випадку Close! Примітка Підключення нового вікна до проекту призводить до того, що менеджер; проекту розміщує його ім'я в списку автоматично створюваних вікон на мал..1 -список Auto-Create forms). В цьому випадку програміст може не піклуватися про ініціацію, відповідного об'єкту вікна. Проте якщо в програмі використовується безліч вікон, автоматичне їх створення у момент старту програми може істотно затягнути в часі процес завантаження програми; У той же час негайне створення всіх вікон зовсім не обов'язкове, оскільки навряд чи вам знадобиться одночасно показувати їх на екрані в немодальному режимі. Професійні програмісти ніколи не створюють: всі віконні об'єкти у момент старту програми, але використовують їх у міру потреби. Для цього у вікні менеджера проекту посилання на ці форми переносяться в панель Available forms (мал. 1), а звернення до вікна. Application.CreateForm(TAboutBox, AboutBox); AboutBox.show; Мені відомий випадок, коли цей нехитрий прийом дозволив скоротити час завантаження програми із 3 хвилин з гаком до 15 секунд. До речі, корисно відповідним чином набудувати середовище Delphi: викличте Tools I Environment Options і на сторінці Designer приберіть прапорець в перемикачі Autоcreate forms & data modules.
Дата добавления: 2015-07-02; Просмотров: 437; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |