| 94 | from anytree import Node, RenderTree |
| 95 | |
| 96 | def PrintAllControlTree(ele): |
| 97 | def findall(ele, n=0, node=None): |
| 98 | nn = '\n' |
| 99 | nodename = f"[{ele.ControlTypeName} {n}](\"{ele.ClassName}\", \"{ele.Name.replace(nn, '')}\", \"{''.join([str(i) for i in ele.GetRuntimeId()])}\")" |
| 100 | if not node: |
| 101 | node1 = Node(nodename) |
| 102 | else: |
| 103 | node1 = Node(nodename, parent=node) |
| 104 | eles = ele.GetChildren() |
| 105 | for ele1 in eles: |
| 106 | findall(ele1, n+1, node1) |
| 107 | return node1 |
| 108 | tree = RenderTree(findall(ele)) |
| 109 | for pre, fill, node in tree: |
| 110 | print(f"{pre}{node.name}") |
| 111 | except: |
| 112 | pass |
| 113 | |