Имам QML файл, който съдържа оформление на QML елементи и сега искам един от тези елементи да бъде QGLWidget. т.е. искам да изобразя на конкретен QML елемент.
Някой знае ли как се прави това?
Имам QML файл, който съдържа оформление на QML елементи и сега искам един от тези елементи да бъде QGLWidget. т.е. искам да изобразя на конкретен QML елемент.
Някой знае ли как се прави това?
Предполагам, че най-простият начин е да се предостави на QML нов персонализиран компонент, внедрен в C++. Не намерих нищо готово.
Можете да подкласирате QDeclarativeItem и да внедрите вашия OpenGL код във функцията за рисуване, след като използвате QPainter: :beginNative() функция. След това можете да „експортирате“ своя нов персонализиран елемент в QML насам. Това е доста просто и трябва да работи, но ще трябва да настроите прозореца за изглед на вашия QDeclarativeView да бъде QGLWidget, нещо подобно:
QDeclarativeView view;
// This is needed because OpenGL viewport doesn't support partial updates.
view.setViewportUpdateMode(QGraphicsView::FullViewportUpdateMode);
view.setViewport(new QGLWidget);
или ще трябва да използвате графичната система opengl за цялото приложение. Друг начин е да използвате QML/3D.
Тази тема ще ви даде друга информация.