LINUX.ORG.RU

Qt5 экспорт своего типа в qml

 metatypes, ,


0

2

Уже взорвал себе мозг.

QGuiApplication app(argc, argv);
QtQuick2ApplicationViewer viewer;
viewer.setMainQmlFile(QStringLiteral("qml/NFileMan/main.qml"));

QQuickItem *root = viewer.rootObject();
QQmlContext *ctx = viewer.engine()->rootContext();

Ololo ololo;

ctx = viewer.engine()->rootContext();
ctx->setContextProperty("myOlolo", &ololo);

viewer.show();


// ========= Ololo.h ===========
class Ololo : public QObject
{
   Q_OBJECT
public:
   ...

   Q_INVOKABLE Trololo *trololos();
};


Q_DECLARE_METATYPE(Ololo*)

// ========= Trololo.h ===========

class Trololo : public QObject
{
   Q_OBJECT
public:
   ...

   Q_INVOKABLE int test();
};

из main.qml не может достать до myOlolo, пишет андефайнед. Из другого *.qml - достаёт, но видимо потому, что там достаёт функция на js. Но даже там до Trololo достать не может, где-что нужно регистрировать? Покажите куда копать.

★★★
Ответ на: комментарий от anonymous

Подозревал это, только когда менял местами - не воркало все, зато не ругалось. Исправил в другом месте - заработало. Спасибо.

vova7890 ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.