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

Вниз

Плагины   Найти похожие ветки 

 
Alexx1524   (2007-12-04 14:12) [0]

Пытаюсь подключать плагины к моей программе, создавая автоматически пункты меню из Dll-ки, вот пример
Procedure TNewPlu.OnShowForm(Sender : TForm);
var pm,pmPlace:TMenuItem;

begin
 if not Assigned(Sender) then exit;
   if Sender.Name="mainfm" then begin
     pmPlace:=TMenuItem(Sender.FindComponent("n4"));
     if Assigned(pmPlace) then begin
       pm:=TMenuItem.Create(sender);
       pm.Name:="p2";
       pm.Caption:="&Проверка работы плагина Clas...";
       pm.OnClick:= PluginClick;
       pmPlace.Parent.Insert(pmPlace.MenuIndex+1,pm);
     end;
   end;
 end;
создаю список плагинов, потом запускаю для каждого плагина событие OnShowForm, пункты меню появляются, но обработчик один и тот же (те из одной dll). ставлю проверку на имя вызывающего компонента, все время одно, хотя разные пункты меню... Помогоите плиз!!!


 
de.   (2007-12-04 14:24) [1]

Перепиши TMenuItem, добави туда поле например FPlugPath и при создании элементов присваивай полю путь к плагину.!


 
de.   (2007-12-04 14:28) [2]

А в обработчике напиши чтоб плагин загружался по пути FPlugPath. Помоему поможет. :-)


 
de.   (2007-12-04 14:46) [3]

Ну что? Еще не помогло?


 
DiamondShark ©   (2007-12-05 13:36) [4]


> Alexx1524   (04.12.07 14:12)  

Кто такой TNewPlu? Где он описан? Из какого места вызывается OnShowForm?

Этот огрызок кода ни о чём не говорит.


 
Sairex ©   (2008-03-26 17:25) [5]

я лично делаю следующим образом при старте программы, инициализирую каждый плагин, затем с каждого плагина получаю менюшку, при этом  Tag менюшки соотвествует индексу плагина в массиве, и при выборе менюшки, выбираю необходимую для нее обрабатывающую процедуру.



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

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

Наверх




Память: 0.45 MB
Время: 0.005 c
2-1228217502
and123
2008-12-02 14:31
2009.01.18
Работа с TImage


15-1227170640
Наташа
2008-11-20 11:44
2009.01.18
Свёртывание окон


15-1226943419
Маэстро
2008-11-17 20:36
2009.01.18
Почему не дают больничный когда депрессия?


15-1226900583
mml
2008-11-17 08:43
2009.01.18
Вопрос к тем, кто читал книгу Агурова "Практика программирования


3-1212685846
Сергей
2008-06-05 21:10
2009.01.18
Вывод сведений из запроса в компонент StringGrid





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский