Використання Repository
Я створив нову форму, і зробив їй кілька додаткових подій. Потім я помістив її в Repository. Як змусити ці події з'явитися в Object Inspector "е при використанні даної форми зі сховищ?
Події я оголосив наступним чином:
type
# XA0; TEventUpdateNavBar = procedure (Sender: TObject) of object;
# XA0; TEventDocumentClick = procedure (Sender: TObject) of object;
# XA0 ;.
# XA0; private
# XA0; # XA0; FAfterUpdateNavBar: TEventUpdateNavBar;
# XA0; # XA0; FBeforeUpdateNavBar: TEventUpdateNavBar;
# XA0; # XA0; FDocumentClick: TEventDocumentClick;
# XA0; # XA0; procedure DoDocumentClick ();
# XA0; # XA0 ;.
# XA0; published
# XA0; # XA0; # XA0; # XA0; //! Подія спрацьовує до оновлення меню "Функцій"
# XA0; # XA0; property OnBeforeUpdateNavBar: TEventUpdateNavBar read FBeforeUpdateNavBar
# XA0; # XA0; # XA0; write FBeforeUpdateNavBar;
# XA0; # XA0; //! Подія спрацьовує після оновлення меню "Функцій"
# XA0; # XA0; property OnAfterUpdateNavBar: TEventUpdateNavBar read FAfterUpdateNavBar
# XA0; # XA0; # XA0; write FAfterUpdateNavBar;
# XA0; # XA0; //! Подія спрацьовує при виборі будь-якого документа з меню "Документи"
# XA0; # XA0; property OnDocumentClick: TEventDocumentClick read FDocumentClick
# XA0; # XA0; # XA0; write FDocumentClick;
# XA0; end;
1. Форму (без DFM) з подіями - в run-time пакет.
2. Зробити design-time пакет, в Register викликати RegisterCustomModule.
3. Спадкоємця форми - в репозиторій.
В такому випадку виходить, що компоненти які були на моїй головній формі - зникли. Вірніше вони є, але в дезайн таймі не видно.
Загалом питання - як додати свою форму в репозиторій і при цьому що б зберегти компоненти котрі в даний момент на ній знаходяться (що б вони були видні в дизайн таймі для спадкоємців) і що б з'явилися нові властивості / подія в інспекторові об'єктів?
Я зрозуміло пояснив? Або пояснити може що? Або таке взагалі в принципі зробити не можна?
Така проблема була, але в D7 вона вже усунена. Можливо, потрібно встановити всі оновлення.
Так у мене D10 + Update2. Тобто по ідеї візуальні компоненти повинні залишатися? Або я щось десь повинен ще прописати?
Чи не могли б ви порадити якусь статтю зі створення design / run-time пакетів (або пояснити трохи по докладніше як вони створюються)? Може я просто не так що роблю.
Шановний Юрій Зотов - він же "Майстер Делфі" - я дивлюся у вас прямо таки звичка уважно не читаючи питання давати на нього непотрібні відповіді. Спершу ви правильно відповіли:
> 1. Форму (без DFM) з подіями - в run-time пакет.
> 2. Зробити design-time пакет, в Register викликати RegisterCustomModule.
>
> 3. Спадкоємця форми - в репозиторій.
а потім відповіли м'яко кажучи не по темі.
> Така проблема була, але в D7 вона вже усунена. Можливо,
> # XA0; потрібно встановити всі оновлення.
Велике прохання якщо ви не знаєте що відповісти # XA0; - не кажіть нічого - флуд справа не дуже гарне.
Тим більше не давайте посилання на свої подібні відповіді в інших темах.
Як цікавий цей світ, однако.
: О)
Колись давно я на цю задачу гримнув пару місяців, не займаючись більше нічим. Чи не впорався - і кинув. А через якийсь час повернувся до неї ж - і все-таки зробив.
Хотів дати Вам готове рішення, але тепер вже Ви самі, батенька, самі. А для затравки можу скріншотік викласти, якщо хочете. Там і форма з новими властивостями, і візуальне спадкування - і все в порядку, нічого нікуди не зникає.
Так що - шукайте далі. Може, і прохолоне. Може, і зрозумієте дещо. У процесссов пошуку, так би мовити.
Ну що я можу сказати - кожен розплачується за своє і свого часу.
Але залишаюся на своєму - флуд - справа не красиве - тим більше для Майстрів.
І на що образився - на те що звернули увагу, що на 2 теми дав відповіді "не в тему" # XA0; - пардон за каламбур - ну що ж на скривджених.
Вобщем удачі - не буду і я флудить - тема-то не моя)))
Ок - я і зі "свого" готовий зійти, але ось після довгого поневіряння по різним форумам і отримання непотрібних відповідей - трохи не в собі - якщо кого образив - прошу вибачення.
Всім удачі.
Що ж, я радий, що Ви про нього все-таки згадали. Світ не такий поганий, панове.
> На скріншотік є бажання поглянути