gpt4 book ai didi

python - 如何确保 Qt 表格单元格中的所有数据都可见?

转载 作者:太空狗 更新时间:2023-10-29 23:10:38 27 4
gpt4 key购买 nike

我目前正在使用 PyQt4 处理 python 2.7。但是,C++ 中的解决方案可能会有所帮助。

我正在使用 QTableWidget 创建表格。该表在我的应用程序上的空间有限,并且不可编辑。表中的某些单元格包含大量数据。其中一些对用户不可见。我正在寻找一种解决方案来显示所有单元格的数据,而不会使表格变大。我试图为单元格设置不同的标志,但我一无所获。

我考虑过为单元格设置滚动条。可能吗?

为了确保表格不可编辑,我使用了:

table.setEditTriggers(QtGui.QAbstractItemView.NoEditTriggers)

我也试过使用 -

table.item(row_index, col_index).setFlags(QtCore.Qt.ItemIsSelectable | QtCore.Qt.ItemIsEnabled)

在表格中的每个单元格上,但它得到了相同的结果 - 没有编辑 + 只有一些数据可见。

图像:我正在寻找一个选项,以确保 (2,2) 处的所有数据(即“aaaaaa...”)对用户可见。也许在该单元格内设置垂直滚动条是解决方案?如果可以,怎么做?

最佳答案

一个可能的解决方案是在QHeaderView::ResizeToContents中设置水平表头的resizeMode

from PyQt4 import QtCore, QtGui

if __name__ == "__main__":
import sys

app = QtGui.QApplication(sys.argv)
w = QtGui.QTableWidget(4, 2)
w.setEditTriggers(QtGui.QAbstractItemView.NoEditTriggers)
header = w.horizontalHeader()
header.setResizeMode(QtGui.QHeaderView.ResizeToContents)

for i in range(w.rowCount()):
for j in range(w.columnCount()):
it = QtGui.QTableWidgetItem("item ({}-{})".format(i, j))
w.setItem(i, j, it)
w.item(2, 1).setText("a" * 20)
w.show()
sys.exit(app.exec_())

enter image description here

关于python - 如何确保 Qt 表格单元格中的所有数据都可见?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56227913/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com