Не-визуална форма наследство в Delphi
Roschupkin AV
Урал държавен университет на железопътния транспорт, Лаборатория по Математическо моделиране и компютърни технологии, Екатеринбург
Резюме.
В [1] подробно методите за "визуален" форма наследство в Delphi с оглед на тяхното повторно използване. Тази статия изследва възможността за използване на клас TForm наследник, като майка за новите форми. метод Etod е удобно в случая, където няма значение външните форми на монотонността, като в [1]. и е важно, че поведението на различни форми на интерфейса е един и същ.
Създаване на клас.
Създаване на базовия клас, наследник на TForm, които по-късно ще наследи всички наши форми. За този нов или съществуващ пакет, добавете TBaseForm компоненти, както е показано на фигура 1.
Фиг. 1. Създайте нов TBaseForm компонент
За Delphi 6 в параграф Изисква нашия пакет добави "Borland дизайнер IDE пакет" (по подразбиране се намира в C: \ Program_files \ Borland \ Delphi6 Lib \ designide.dcp \). За Delphi 5 съдържа всичко необходимо, за нас, за да "Borland Visual Component Library" (тя е включена в пакета автоматично). Употребите за Delphi раздел 5 добавяне DsgnIntf и за Delphi 6 DesignIntf и DesignEditors. Регистрирайте само промяна на процедурата, която е създала компонента, както се прави в Списък 1. Обява 1. Промяна на процедурата се регистрирайте.
Ние компилирате нашия пакет - клас TBaseForm готов за използване.
Използването на класа.
Пример използване.
Да предположим, че имаме задача: всички форми на проекта трябва да предоставят информация за версията на формата (което е необходимо, когато един и същ проект, за да се поберат на различните клиенти), и да се покаже информация за формата, по никакъв начин.
За постигането на тези цели се променят TBaseForm клас, както е показано на Обява 2. Ето, добавянето на съответните променливи и свойства да съхранява информация за версията на формата и на механизъм за показване на информацията за формата от менюто на прозореца система - нова система за меню добавя "On форма". Обявата 2.
Сега, като наследи всички форми на проекта от един клас TBaseForm, ние можем да спаси версия на формата и да получат информация за формата, чрез меню прозорец система (форми).
Разбира се, този пример не се ограничава само с използването на този метод. От очевидни приложения се разглеждат: 1) прозорци параметри запазване, например на метода [2]; 2) правата за достъп (ако някъде, например, в база данни, ние се запази правото на достъп до елементите на прозореца, тези права могат да бъдат реализирани в TBaseForm конструктор); 3) раздели между елементите, като натиснете бутона за въвеждане в TEdit на прозорец (за това, което трябва да се обърне върху съответния манипулатор NewWndProc) и т.н.
Недостатъци на метода включват факта, че е изключително трудно да се създаде визуални елементи в изграждането на един клас TBaseForm.
Заявление.
В package.zip - опаковка, съдържаща TBaseForm на определение клас. В program.zip - пример за програма, която съдържа три форми наследени от TBaseForm.
Позоваването
Свързани статии