python pyqt5 qtreewidget 显示水平和垂直网格线

要在PyQt5的QTreeWidget中显示水平和垂直网格线,可以使用QTreeWidget的样式表(Stylesheet)来实现。

下面是一个示例代码,演示如何显示水平和垂直网格线:

from PyQt5.QtWidgets import QApplication, QTreeWidget, QTreeWidgetItem
from PyQt5.QtCore import Qt

app = QApplication([])

treeWidget = QTreeWidget()
treeWidget.setColumnCount(3)

# 设置样式表以显示网格线
treeWidget.setStyleSheet("QTreeView::item { border: 1px solid gray; }")

# 设置树形视图的网格线可见
treeWidget.setRootIsDecorated(False)
treeWidget.setAlternatingRowColors(True)
treeWidget.setAnimated(True)
treeWidget.setExpandsOnDoubleClick(False)
treeWidget.setHeaderHidden(True)
treeWidget.setIndentation(0)
treeWidget.setSortingEnabled(False)
treeWidget.setSelectionMode(QTreeWidget.NoSelection)
treeWidget.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
treeWidget.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff)

# 添加示例数据
parent = QTreeWidgetItem(treeWidget, ['Parent Item'])
child1 = QTreeWidgetItem(parent, ['Child Item 1'])
child2 = QTreeWidgetItem(parent, ['Child Item 2'])
child3 = QTreeWidgetItem(parent, ['Child Item 3'])

treeWidget.expandAll()

treeWidget.show()

app.exec_()

在上面的示例中,我们首先创建一个QTreeWidget,并设置了一些树形视图的属性,例如列数、样式表和其他相关属性。然后,我们添加了一些示例数据,以显示树形结构。最后,我们显示了整个QTreeWidget。

通过设置treeWidget.setStyleSheet("QTreeView::item { border: 1px solid gray; }")这行代码,我们使用样式表为QTreeWidget的每个项(item)设置了1像素宽的灰色边框,从而实现了水平和垂直网格线的效果。

你可以根据需要调整样式表来改变网格线的样式和颜色。

你可能感兴趣的:(python,pyqt,qt,python,开发语言,qt5)