2

我想知道是否可以在 QTreeWidgetItem 中保留浮点值?

当我尝试使用 setData(0,0,number) 记录数字时,它会将其四舍五入到 6 位精度,这对我来说还不够。我想保留确切的浮点值以进行进一步计算。

4

2 回答 2

2

您可以做以下两件事之一,QVariant 几乎可以存储任何类型:

v = QtCore.QVariant(aFloat)
aFloat = v.toDouble()[0]

您会将 QVariant 存储为数据。

或者您可以在项目上设置任意属性:

item = QtGui.QTreeWidgetItem()
item.foo = 123.123
于 2012-08-17T20:38:18.763 回答
0

我认为将 QVariant 与 str 一起使用可以做到这一点

a = 0.12345678963582

item.setData(QtCore.Qt.UserRole,QtCore.QVariant(str(a)))

.....

val = float(item.data(QtCore.Qt.UserRole).toString()).strip())
于 2012-08-17T20:24:40.000 回答