我目前有一個設置,我試圖在QTableWidget
中嵌入複選框。我設置的複選框細胞的方式如下:QTableWidget中嵌入式複選框發出的信號
chkbox1 = QTableWidgetItem()
chkbox1.setFlags(Qt.ItemIsUserCheckable | Qt.ItemIsEnabled)
chkbox1.setCheckState(Qt.Unchecked)
chkbox2 = QTableWidgetItem()
chkbox2.setFlags(Qt.ItemIsUserCheckable | Qt.ItemIsEnabled)
chkbox2.setCheckState(Qt.Unchecked)
self.tblData.setItem(i, 0, chkbox1)
self.tblData.setItem(i, 1, chkbox2)
這似乎很好地工作,但我似乎無法趕上每當一個複選框被選中或取消選中所發出的信號。我試過了:
self.connect(self.tblData, SIGNAL('itemChanged(QTableWidgetItem)'), self.updatePlot)
但是這並沒有做任何事。作爲一個測試,我已經將按鈕點擊連接到相同的方法,並且它工作正常,所以我知道這只是我錯過了一個信號。
據我所知,itemChanged
應該在任何時候發出任何數據改變,並且不改變複選框狀態改變數據?
在此先感謝您的幫助。
+1新式連接。我無法想象仍然試圖用簽名來解決問題。 – jdi 2012-07-21 21:36:30
謝謝你。我不知道爲什麼我使用舊式,我想這只是在我繼承的代碼中,而我必須成爲習慣。壞我。 – WilcoRogers 2012-07-23 14:06:04