У меня есть класс, который наследует QQuickItem
и QQuickImageProvider
. Этот класс создается из qml. Мне нужно вызвать QQmlEngine::addImageProvider
, чтобы этот класс действительно мог предоставлять изображения. Я должен получить механизм, в котором существует мой объект, как описано в этом вопросе. В конструкторе моего класса я звоню
QQmlEngine *engine = nullptr;
QQmlContext *context = QQmlEngine::contextForObject(this);
if (context)
engine = context->engine();
if (engine)
engine->addImageProvider("MyImageProvider", this);
Но QQmlEngine::contextForObject(this);
всегда возвращает нулевой указатель. Почему это не работает?