美文网首页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)实现可以拖拽的窗体

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

  • 2018-04-12 窗体设计:自动调整控件大小

    1、 原始窗体: 2、 现要实现:当拖拽窗体进行伸缩变化时,窗体中包含的所有控件诸如“确定”button随着窗体大...

  • C#学习笔记之C#控件 2018.7.22

    2018.7.22 转载请标明出处 新建windows窗体应用后可以再工具箱中拖拽控件放入窗体。 常见的控件有La...

  • python项目实战:pyQT5 实现窗体之间传值

    本节分享一个pyQT5 实现窗体之间传值,希望能够帮助到大家 准备 一个MainWindow和一个WidgetFo...

  • 原生拖拽,拖放事件(drag and drop)

    拖拽,拖放事件可以通过拖拽实现数据传递,达到良好的交互效果,如:从操作系统拖拽文件实现文件选择,拖拽实现元素布局的...

  • Deepin15.10.1搭建PyQt5/PySide2环境(基

    PyQt5/PySide2是Qt环境的python实现,Qt可以实现跨平台的GUI编程。PyQt5/PySide2...

  • POS-2017

    拖拽排序功能 实现方法: 使用jquery的Sortable功能可以实现拖拽功能 index页面 html部分 商...

  • HTML5拖拽drag

    通过拖拽实现页面元素的位置改变 实现拖拽效果 源元素 - 要拖拽的文件 目标元素 - 要拖拽到哪里去 目前实现拖拽...

  • pyqt5——拖拽

    拖拽 在GUI里,拖放是指用户点击一个虚拟的对象,拖动,然后放置到另外一个对象上面的动作。一般情况下,需要调用很多...

  • 仿QQ邮箱上传文件

    实现效果: 涉及的知识点包括: 1.拖拽 设置成true,元素就可以拖拽拖拽元素事件 dragstartdrag...

网友评论

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

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