美文网首页PYQT5学习与开发
PYQT5(7)实现可以拖拽的窗体

PYQT5(7)实现可以拖拽的窗体

作者: 弗兰克万岁 | 来源:发表于2019-01-01 16:08 被阅读261次
    class MyWindow(QMainWindow):
        def __init__(self):
            super().__init__()
    
        def mousePressEvent(self, event):
            if event.button() == Qt.Qt.LeftButton:
                self.m_flag = True
                self.m_Position = event.globalPos() - self.pos()  # 获取鼠标相对窗口的位置
                event.accept()
                self.setCursor(QCursor(Qt.Qt.OpenHandCursor))  # 更改鼠标图标
    
        def mouseMoveEvent(self, QMouseEvent):
            if Qt.Qt.LeftButton and self.m_flag:
                self.move(QMouseEvent.globalPos() - self.m_Position)  # 更改窗口位置
                QMouseEvent.accept()
    
        def mouseReleaseEvent(self, QMouseEvent):
            self.m_flag = False
            self.setCursor(QCursor(Qt.Qt.ArrowCursor))
    

    无边框的效果可以查看我另一个教程
    鼠标放上去就可以拖拽了,额,gif不会截,就放个预览把


    图片.png

    相关文章

      网友评论

        本文标题:PYQT5(7)实现可以拖拽的窗体

        本文链接:https://www.haomeiwen.com/subject/hninlqtx.html