我正在使用 Qt 和 python(以及 pyqt)编写一个 QGIS 插件。
在 QtDesigner 中,我有一个 QTableWidget 对象,如果有办法获取列项类型,我真的很挣扎。
例如,在下表中:
我输入一些用户可以编辑的默认参数。此外,用户可以添加具有其他值的其他行。
我想知道我是否可以获得force列数据类型输入(例如 float、int、string),并将此信息作为列表(或任何其他 python 对象)获取,以便我可以在 python 代码中使用。
我在 Qt API 中没有找到有用的东西。
你知道是否有办法做到这一点?
EDIT
感谢 @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]
我发现 QVariant 类型与数字相关联(2 代表 Int,6 代表 Double,10 代表字符串),所以我期望l
充满了这些数字,所以:
l = [2, 6, 6, 6, 6, 6, 6, 6, 6]
我错过了什么吗?
再次感谢