如何将文件拖放到PyQt5中的QTableWidget中>

问题描述 投票:1回答:1
我正在尝试创建一个表小部件,可以在其中放置音频文件,并用文件名,文件大小等填充表。我的代码如下。我尚未实现用于读取dragEnterEvent上的元数据的部分,因为该表甚至不接受任何形式的删除。

from PyQt5 import QtCore, QtWidgets class Ui_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.resize(982, 615) MainWindow.setAcceptDrops(True) MainWindow.setStyleSheet("background-color: rgb(255, 255, 255);") self.centralwidget = QtWidgets.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") self.label = QtWidgets.QLabel(self.centralwidget) self.label.setGeometry(QtCore.QRect(360, 0, 271, 181)) self.label.setText("") self.label.setObjectName("label") self.tableWidget = QtWidgets.QTableWidget(self.centralwidget) self.tableWidget.setGeometry(QtCore.QRect(10, 200, 701, 331)) self.tableWidget.setAcceptDrops(True) self.tableWidget.setEditTriggers(QtWidgets.QAbstractItemView.NoEditTriggers) self.tableWidget.setDragDropMode(QtWidgets.QAbstractItemView.DragDrop) self.tableWidget.setDefaultDropAction(QtCore.Qt.CopyAction) self.tableWidget.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectRows) self.tableWidget.setShowGrid(False) self.tableWidget.setSortingEnabled(True) self.tableWidget.setObjectName("tableWidget") self.tableWidget.horizontalHeader().setVisible(True) self.tableWidget.verticalHeader().setVisible(False) self.tableWidget.setRowCount(6) self.tableWidget.setColumnCount(6) MainWindow.setCentralWidget(self.centralwidget) self.menubar = QtWidgets.QMenuBar(MainWindow) self.menubar.setGeometry(QtCore.QRect(0, 0, 982, 21)) self.menubar.setObjectName("menubar") MainWindow.setMenuBar(self.menubar) self.statusbar = QtWidgets.QStatusBar(MainWindow) self.statusbar.setObjectName("statusbar") MainWindow.setStatusBar(self.statusbar) self.titleUi(MainWindow) QtCore.QMetaObject.connectSlotsByName(MainWindow) def dragEnterEvent(self, event): event.accept() def dropEvent(self, event): event.accept() def titleUi(self, MainWindow): MainWindow.setWindowTitle("tableWidget") if __name__ == "__main__": import sys app = QtWidgets.QApplication(sys.argv) MainWindow = QtWidgets.QMainWindow() ui = Ui_MainWindow() ui.setupUi(MainWindow) MainWindow.show() sys.exit(app.exec_())

我如何使表格接受滴液?

我正在尝试创建一个表小部件,可以在其中放置音频文件,并用文件名,文件大小等填充表。我的代码如下。我还没有实现阅读...

python file drag-and-drop pyqt5 qtablewidget
1个回答
0
投票
首先,应导入由pyuic创建的文件,而不是直接对其进行编辑,否则,如果您在Qt Designer中进行进一步的更改,所有编辑将丢失。 (下面的示例代码将显示如何执行此操作。)
© www.soinside.com 2019 - 2024. All rights reserved.