1
我已經通過使用qt/qml完成了無框窗口,但是現在我無法使用win7窗口鏈接器(向左和向右)添加窗口並將其拖到屏幕的頂部。有什麼辦法來處理這些信號?無框pyqt/qml窗口
main.py
class MainDialog(QtQuick.QQuickView):
def __init__(self, parent = None):
super(MainDialog, self).__init__(parent)
self.maxed = False
self.ctx = self.engine().rootContext()
self.ctx.setContextProperty("view", self)
self.ctx.setContextProperty("maximized", self.maxed)
self.setSource(QtCore.QUrl("Main.qml"))
self.setResizeMode(QtQuick.QQuickView.SizeRootObjectToView)
self.setFlags(QtCore.Qt.FramelessWindowHint
| QtCore.Qt.Window
| QtCore.Qt.WindowSystemMenuHint
)
self.setColor(QtGui.QColor(QtCore.Qt.transparent))
self.engine().quit.connect(App.quit)
main.qml
import QtQuick 2.1
Rectangle {
id: main
width: 500
height: 600
visible: true
border.color: "black"
opacity: .95
MouseArea {
anchors.fill: frame
onPressed: {
frame.mouse_x = mouseX
frame.mouse_y = mouseY
}
onPositionChanged: {
view.x += mouse.x - frame.mouse_x
view.y += mouse.y - frame.mouse_y
}
onDoubleClicked: !maximized ? view.set_max()
: view.set_normal()
}
}