我正在写一个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