1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- from PyQt5.QtCore import QCoreApplication
- from PyQt5.QtWidgets import QTreeWidget, QTreeWidgetItem
- from processing.tools.PostgreSQL.PostgreSQL import PostgreSQL
- class Tree:
- type = ""
- def __init__(
- self,
- type: str
- ):
- self.type = type
- def createTree(self,data, parent, parentid):
- if parentid is not None:
- for row in data:
- if row[2] == parentid:
- item = QTreeWidgetItem(parent)
- item.setText(0, row[1])
- item.setText(1, row[0])
- self.createTree(data, item, row[0])
- else:
- for row in data:
- item = QTreeWidgetItem(parent)
- item.setText(0, row[1])
- item.setText(1, row[0])
- self.createTree(data, item, row[0])
- def initTreeWidget(self):
- tree = QTreeWidget()
- tree.setColumnCount(2)
- tree.setColumnHidden(1, True) # 隐藏路径列
- tree.setObjectName(self.type)
- tree.setHeaderLabels({"标识码", "名称"})
- tree.headerItem().setHidden(True)
- pg = PostgreSQL(schema="base")
- if self.type == "zyml":
- treedata = pg.getZyml()
- self.createTree(treedata, tree, "")
- elif self.type == "xzqh":
- treedata = pg.getXzqh()
- self.createTree(treedata, tree, "")
- # print(treedata)
- pg.close()
- __sortingEnabled = tree.isSortingEnabled()
- tree.setSortingEnabled(True)
- tree.setSortingEnabled(__sortingEnabled)
- return tree
|