Официальный сайт студ.городка НГТУ
Программирование и БД » Кто писал плагины. Вопрос. 

#1  31.01.06 18:44

Кто писал плагины. Вопрос.

Есть плагин, который работает с програмой через COM. Как создать отдельное диалоговое окно? Добавить его в проект при написании плагина, а потом просто сделать видимым для нужных действий? Или создавать окно в процессе работы, прежде написав ручками расположение всех его элементов и их свойств? Такой подход уж слишком трудоемким мне кажется.
Что предложите?

Offline

#2  09.02.06 20:26

Re: Кто писал плагины. Вопрос.

ну, плагин - это просто dll библиотека (или so под линух)... как правило, ты экспортишь из нее не функции, а класс, который содержит все необходимые функции... твоя задача: экспортировать класс окна, и функцию, которая возвращает создаваемый объект окна.... примерно так(это на CBuilder6):

Код: C:

/* в .cpp файле самой длл */
TMyForm * create_instance(TComponent*Owner)
{
    return new TMyForm(Owner);
}

Код: C:

/* в .h файле длл */
#ifdef __DLL__
# define DLL_EXPORT __declspec(dllexport)
#else
# define DLL_EXPORT __declspec(dllimport)
#endif
 
DLL_EXPORT THistForm * create_instance(TComponent *);

потом, в программе, которая подгружает плагин делаешь вызов:

Код: C:

        /* вставка в функцию кнопки или пункта меню */
        TMyForm *MyForm = create_instance(this);
        if(MyForm->ShowModal()==mrOk)
                return;
        delete MyForm;

Offline

#3  13.02.06 18:06

Re: Кто писал плагины. Вопрос.

ок

Offline

Программирование и БД » Кто писал плагины. Вопрос. 

ФутЕр:)

© Hostel Web Group, 2002-2025.   Сообщить об ошибке

Сгенерировано за 0.400 сек.
Выполнено 14 запросов.