Russian Qt Forum
Ноябрь 22, 2024, 13:35 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: dynamicCall parameters  (Прочитано 5667 раз)
wolf40000
Гость
« : Август 09, 2015, 20:50 »

Кто может объяснить нубу как работать с вот этим?
Код:
void GetVaultViews (QList*& ppoRetViews, bool bOnlyLoggedIn) [slot]
Пример из документации просто исчерпующий  Злой
Код:
QVariantList params = ...
object->dynamicCall("GetVaultViews(QList*&, bool)", params);
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #1 : Август 09, 2015, 22:37 »

Тут побольше вариантов, и другое http://doc.qt.io/qt-4.8/qaxbase.html#details

А так, что вы хотите знать? Насколько я вижу, тут вызывается функция какого activex объекта и в нее передаются 2 параметра, которые заполняются в QVariant списке
Записан

wolf40000
Гость
« Ответ #2 : Август 10, 2015, 10:40 »

Код:
QList*&
Как мне понимать этот тип? Когда QList является шаблоном. И как тогда заполнить:
Код:
QVariantList params = ...
« Последнее редактирование: Август 10, 2015, 10:49 от wolf40000 » Записан
wolf40000
Гость
« Ответ #3 : Август 10, 2015, 10:44 »

Дело еще и в том что dumpcpp сгенерировал такой код что в
Код:
void GetVaultViews (QList*& ppoRetViews, bool bOnlyLoggedIn) [slot]
нужно передавать указатель на
Код:
QList<EdmViewsInfo>*
где EdmViewsInfo является структурой без тела, в .h только
Код:
struct EdmViewsInfo;
И в ответ на вызов функции я получаю
Код:
QAxBase: Error calling IDispatch member GetVaultViews: Type mismatch in parameter 0
« Последнее редактирование: Август 10, 2015, 10:49 от wolf40000 » Записан
wolf40000
Гость
« Ответ #4 : Август 10, 2015, 10:45 »

И да, этот код сгенерирован из SolidWorks EPDM (Edm.tlb).
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.245 секунд. Запросов: 23.