Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.04.23;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.04.23;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.013 c
1-1142602507
shart
2006-03-17 16:35
2006.04.23
Access Violation при открытии файла


15-1144142953
AASD
2006-04-04 13:29
2006.04.23
Чем свой Шрифт сделать (tools)True Type?????


1-1142536791
TStas
2006-03-16 22:19
2006.04.23
А можно серверу сценариев SCRiptHost передать не ...


3-1141225115
Hadroran
2006-03-01 17:58
2006.04.23
Коннект к базе IB


6-1136552752
Dimedrol
2006-01-06 16:05
2006.04.23
TWebBrowser - как поставить фокус на элементе HTML формы?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский