Вниз
Скачать: CL | DM;

Проблема доступа к методам и свойствам объектов главной программы   Найти похожие ветки 

← →
Sergey__   (2006-04-07 16:28) [0]

Уважаемые знатоки, подскажите что я не так делаю или дайте ссылку, где можно об этом почитать. Пишу плагин для своей же проги.
procedure InitPlugin(PlugClass: TPluginInterface);
var
ScGB1P,
MainFormP        : TComponent;
begin
PInterface := PlugClass;
PlugInClass := TPlugInClass.CreateIt;
PlugClass.AddMenuItem("Переинициализация   каналов",PlugInClass.ReInitChannels);

MainApp := PInterface.GetApplication; //возвращает ссылку на главную программу
MainFormP := MainApp.FindComponent("MainForm");
ScGB1Р := MainFormP.FindComponent("ScGB1");//компонент TRadioGroup
 (ScGB2P as TRadioGroup).Visible := False;// когда доходит до этого места, вылетает исключение "Invalid class typecast"
В чем может быть дело ?


← →
Palladin ©   (2006-04-07 16:41) [1]


> ScGB2P


а какого типа эта переменная?


← →
Palladin ©   (2006-04-07 16:48) [2]

P.S.: ...всегда задавался вопросом: причем тут знатоки... когда мастера...


← →
MBo ©   (2006-04-07 16:49) [3]

плагин - BPL?


← →
Sergey__   (2006-04-07 17:04) [4]

Опечатался :-) Правильно (ScGB1P as TRadioGroup).Visible := False;


← →
Amoeba ©   (2006-04-07 17:17) [5]

Почитай статьи про создание плагинов на http://www.delphikingdom.com


← →
Гаврила ©   (2006-04-07 21:33) [6]


> В чем может быть дело ?

В том, что это на самом деле РАЗНЫЕ (с точки зрения системы) классы -
TRadioGroup в хосте и TRadioGroup в библиотеке.
Чтобы это был один класс - собирай и хост и библиотеку с пакетами,
или же вообще измени модель взаимодействия.
Мне кажется, спроектировано все не особо хорошо.
После внеднения такого кода потом концов не найдешь, почему все рухнуло


← →
GrayFace ©   (2006-04-08 16:40) [7]

Если плагины имеют свои формы, то надо подругому. Ну а если не имеют и лень добавлять в Interface процедуры установки свойст объектов, то пока хватит (ScGB2P as TRadioGroup) -> TRadioGroup(ScGB2P). Само собой, при смене версии Дельфи возможна несовместимость.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.025 c
15-1142922769
Ученик чародея
2006-03-21 09:32
2006.04.23
213 вещей, которые запрещено делать в ВС США.


2-1144724162
Laymer
2006-04-11 06:56
2006.04.23
FastReport


2-1144386533
Fostr
2006-04-07 09:08
2006.04.23
Win2000 и WinXP


15-1144222044
Lucefer
2006-04-05 11:27
2006.04.23
Нужен криптографический алгоритм с откр. ключем


15-1144126390
Ega23
2006-04-04 08:53
2006.04.23
С Днём рождения! 4 апреля




   Наверх