作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我单击右侧的“Çiz”按钮时,我想使用 python 代码对特定列中的值进行排序。然而,如果数字是双倍或更多,它会根据第一个元素进行排序。我意识到它接受字符串形式的值。我在网站上查看了很多问题,但没有答案。我不想写脚本,必须有一个排序的解决方案,因为它看起来很容易。
这是我的 Qt 5.10 脚本,here .
这是我的脚本 - 我写了 0 根据第一列进行排序:
QTableWidget.sortItems(0, QtCore.Qt.AscendingOrder)
但它接受字符串值而不是数字值。实际上,当用户单击标题时,有一个脚本会对值进行排序,但我不希望用户单击标题:
QTableWidget.setSortingEnabled(True)
最佳答案
感谢 Gary Hughes 和 here answer for my solution.,我终于找到了解决方案
我举了一个简单的例子来尝试:
mywidget = QTableWidget()
mywidget .insertColumn(0)
mywidget .insertColumn(1)
list1 = [25,1,7]
list2 = [3,15,1]
for num in range(len(list1)):
mywidget.insertRow(num)
item = QTableWidgetItem()
item.setData(Qt.EditRole, list1[num])
mywidget.setItem(num, 0, item)
mywidget.setItem(num, 1, QTableWidgetItem(str(list2[num])))
mywidget.sortItems(0, QtCore.Qt.AscendingOrder)
mywidget.show()
关于python - 如何对 QTableWidget 列值进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50227128/
我是一名优秀的程序员,十分优秀!