I’m looking for a way of dragging frameless window in QtQuick2. I fallowed this thread on the forum Link but it giving me an error.
Main different in the code is that my code uses QtQuick2ApplicationViewer instead of QmlApplicationViewer and it looks like QtQuick2ApplicationViewer do not have “.pos” property.
This is my main.cpp
#include #include "qtquick2applicationviewer.h" #include int main(int argc, char *argv[]) { QGuiApplication app(argc, argv); QtQuick2ApplicationViewer viewer; viewer.rootContext()->setContextProperty("QmlApplicationViewer", (QObject *)&viewer); viewer.setFlags(Qt::FramelessWindowHint); viewer.setMainQmlFile(QStringLiteral("qml/ubusell/main.qml")); viewer.showExpanded(); return app.exec(); }
This is part of my main.qml
MouseArea { id: mouseRegion anchors.fill: parent; property variant clickPos: "1,1" onPressed: { clickPos = Qt.point(mouse.x,mouse.y) } onPositionChanged: { var delta = Qt.point(mouse.x-clickPos.x, mouse.y-clickPos.y) print(QmlApplicationViewer.pos) QmlApplicationViewer.pos = (20,20) QmlApplicationViewer.pos = Qt.point(QmlApplicationViewer.pos.x+delta.x, QmlApplicationViewer.pos.y+delta.y) } }
When I try to drag window I get this error:
TypeError: Cannot read property 'x' of undefined
Any ideas ? Is it even possible with QtQuick2 ? Thanks for help!