在使用PyQt5時,我處理了一個問題,我已經創建了一個QTableWidget,它顯示了一個我在pandas中預先製作的DataFrame(從電子表格中)。cellDoubleClicked text python
什麼即時嘗試unsuccesfully要做的是:從用戶雙擊單元格中獲取文本,以便我可以使用該信息建立一個新的Widget的基礎上作出的選擇。
我所學到的是,我首先需要連接雙擊功能,但我不能事後繼續:
我對我的QTableWidget的連接出現如下:
(在我主窗口小部件)
self.tableView.cellDoubleClicked.connect(self.expandShipments)
「事後我聲明該函數到該信號連接(expandShipments)」
def expandShipments(self):
*** code i need to get doubleClicked cell text ***
我真的很感謝與這種情況下的一隻手。
謝謝。榮譽
編輯:這是我的表填充的方式。
QTableWidget。
def loadFile(self):
fileName='C:/Users/310287757/Desktop/JLG/Programming/tstBIGDF.xlsx'
df = pandas.read_excel(fileName, sheetname='MAIN', header=0) # read file and set header row
df= df.loc[df['Name Opp'] == self.comboProy.currentText()]
self.tableView.setColumnCount(len(df.columns))
self.tableView.setRowCount(len(df.index))
tags=[]
for ele in list(df.columns.values):
tags.append(ele)
self.tableView.setHorizontalHeaderLabels(tags)
for i in range(len(df.index)):
for j in range(len(df.columns)):
self.tableView.setItem(i, j, QTableWidgetItem(str(df.iat[i, j])))
self.tableView.resizeColumnsToContents()
self.tableView.resizeRowsToContents()
PPen = df['Pending amount'].values.sum()
PTot = df['total item amount'].values.sum()
PP=("Pendiente por facturar: U$S %.2f"% PPen)
PT=("Total: U$S %.2f" % PTot)
self.lblPEND.setText(PP)
self.lblTOTAL.setText(PT)
del df,fileName,tags
請顯示你的代碼。 – eyllanesc
QTableWidget或QTableView? – eyllanesc
您可以顯示代碼如何填充小部件中的數據。 – eyllanesc