应用场景:
designer快速设计好UI文件后,需要增加一些特别的界面功能,如文件拖拽显示文件路径功能。
方法如下:
from PySide2.QtWidgets import QApplication, QMainWindow
from PySide2.QtUiTools import loadUiType
Ui_MainWindow, _ = loadUiType('mainwindow.ui')
class MainWindow(QMainWindow, Ui_MainWindow):
def __init__(self):
super(MainWindow, self).__init__()
self.setupUi(self)
self.setAcceptDrops(True) # ==> 设置窗口支持拖动(必须设置)
#鼠标拖入事件
def dragEnterEvent(self, event):
file = event.mimeData().urls()[0].toLocalFile() # ==> 获取文件路径
self.label.setText(file)
# 鼠标放开函数事件
event.accept()
if "__main__" == __name__:
app = QApplication([])
window = MainWindow()
window.show()
app.exec_()
效果如下图: