我正在寫一個QGIS插件使用Qt和python(以及pyqt)。QTableWidgetItem返回項目類型(pyqt)
在QtDesigner中,我有一個QTableWidget對象,如果有辦法獲得列項類型,我真的很掙扎。
例如,如下表所示:
我輸入用戶可以編輯一些缺省參數。此外,用戶可以添加具有其他值的其他行。我想知道如果我可以得到強制列數據類型輸入(例如float,int,string),並獲取我可以在Python代碼中使用的列表(或任何其他python對象)的此信息。
我沒有在Qt API中找到有用的東西。
你知道是否有辦法做到這一點?
編輯
得益於@rbaleksandar答案我做了一個步驟。
的一段代碼如下:
l = []
for i in range(self.tableWidget.columnCount()):
itm = self.tableWidget.item(0,i)
l.append(itm.type())
但是,即使在填充有一些數量的,用的QVariant 結果列表的表的第一行翻譯值由零的:
l = [0, 0, 0, 0, 0, 0, 0, 0, 0]
我發現了與數字(2爲中等,6爲雙和10絃樂)相關聯的類型的QVariant所以預計l
填充有這些數字,所以:
l = [2, 6, 6, 6, 6, 6, 6, 6, 6]
我錯過了什麼嗎?
再次感謝
你可以提供概括您的問題最小工作示例,這樣其他人(包括我自己)不必鍵入整個應用程序,而是與您的代碼工作? – rbaleksandar
你想限制用戶可以輸入到單元格中的內容嗎?例如,只允許他們輸入整數和浮點數? –
@Brendan Abel,如果有可能的話。 – matteo