Вниз
Скачать: 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.026 c
15-1143758823
Andy BitOff
2006-03-31 02:47
2006.04.23
Интересная статья о птичьем гриппе.


2-1144653457
shapm
2006-04-10 11:17
2006.04.23
Как обратиться к элементам массива записей без использования имен


11-1118889227
DmiSb
2005-06-16 06:33
2006.04.23
Компонент - Object Inspector


15-1143548304
antonn
2006-03-28 16:18
2006.04.23
Вопрос по HTML


2-1144259729
Yegorchic
2006-04-05 21:55
2006.04.23
TMainMenu.ShortCut




   Наверх