from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *
import sys
class Mycombox(QComboBox):
def __init__(self):
super(Mycombox, self).__init__()
self.setAcceptDrops(True)
def dragEnterEvent(self, e):
print(e)
if e.mimeData().hasText():
e.accept()
else:
e.ignore()
def dropEvent(self, e):
self.addItem(e.mimeData().text())
class DropDemo(QWidget):
def __init__(self):
super(DropDemo, self).__init__()
layout = QFormLayout()
layout.addRow(QLabel('请将左边的文本拖到右边显示'))
lineEdit = QLineEdit()
lineEdit.setDragEnabled(True)
combo =Mycombox()
layout.addRow(lineEdit,combo)
self.setLayout(layout)
self.setWindowTitle('拖拽案例')
if __name__ == '__main__':
app =QApplication(sys.argv)
main = DropDemo()
main.show()
app.exit(app.exec_())
PyQt5 文本控件拖拽
最新推荐文章于 2024-03-28 20:21:39 发布