Python之GUI框架PyQt5拖拽操作学习笔记
程序员文章站
2022-04-12 09:52:19
...
在计算机图形用户界面中,拖拽操作让用户直观地做复杂的事情。
通常,我们可以拖放两件事:数据或一些图形对象。如果我们把一个图像从一个应用程序到另一个地方,我们拖拽二进制数据。如果我们把一个标签在Firefox中并将其移动到另一个地方,我们拖拽一个图形组件。
简单拖放
有QLineEdit QPushButton,拖着纯文本的行编辑窗口小部件,然后放到按钮部件,按钮的标签会改变。
import sys
from PyQt5.QtWidgets import (QPushButton, QWidget,
QLineEdit, QApplication)
class Button(QPushButton):
def __init__(self, title, parent):
super().__init__(title, parent)
self.setAcceptDrops(True)
def dragEnterEvent(self, e):
if e.mimeData().hasFormat('text/plain'):
e.accept()
else:
e.ignore()
def dropEvent(self, e):
self.setText(e.mimeData().text())
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
edit = QLineEdit('', self)
edit.setDragEnabled(True)
edit.move(30, 65)
button = Button("Button", self)
button.move(190, 65)
self.setWindowTitle('Simple drag & drop')
self.setGeometry(300, 300, 300, 150)
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
ex.show()
app.exec_()
上一篇: 史上最全的拍婚纱照攻略 必须收藏
推荐阅读
-
Python3.4学习笔记之常用操作符,条件分支和循环用法示例
-
Yii框架学习笔记之应用组件操作示例
-
python入门学习笔记之操作列表
-
Yii框架学习笔记之session与cookie简单操作示例
-
YII框架学习笔记之命名空间、操作响应与视图操作示例
-
Python:GUI之tkinter学习笔记之messagebox、filedialog
-
Python学习笔记——爬虫之Scrapy框架
-
Python ORM框架SQLAlchemy学习笔记之安装和简单查询实例
-
Python ORM框架SQLAlchemy学习笔记之数据添加和事务回滚介绍
-
Python ORM框架SQLAlchemy学习笔记之安装和简单查询实例