2017-09-05 2 views
0

QTreeWidget tree_parameters의 일부 셀 안에 QSpinBox를 추가하려고합니다. 이 코드PyQt5에서 QTreeWidget 셀 안에 QSpinBox를 추가하는 방법은 무엇입니까?

l1 = QTreeWidgetItem(["String A", "", ""]) 
l2 = QTreeWidgetItem(["String AA", "", ""]) 
for i in range(3): 
    l1_child = QTreeWidgetItem(["Child A" + str(i), "Child B" + str(i), "Child C" + str(i)]) 
    l1.addChild(l1_child) 

for j in range(2): 
    l2_child = QTreeWidgetItem(["Child AA" + str(j), "Child BB" + str(j), "Child CC" + str(j)]) 
    l2.addChild(l2_child) 

self.tree_parameters.resize(500, 200) 
self.tree_parameters.setColumnCount(3) 
self.tree_parameters.setHeaderLabels(["Column 1", "Column 2", "Column 3"]) 
self.tree_parameters.addTopLevelItem(l1) 
self.tree_parameters.addTopLevelItem(l2) 


item = QTreeWidgetItem() 
widget = QSpinBox() 
widget.setValue(5) 
self.tree_parameters.setItemWidget(item, 1, widget) 

는 트리 나타날 아니라 QSpinBox 위젯은 setItemWidget 기능을 사용하여 추가.

감사합니다!

답변

0

에 따르면 docs :

공극 QTreeWidget :: setItemWidget (QTreeWidgetItem * 항목 INT 컬럼 는 QWidget * 위젯)

지정한 셀에 표시되는 소정 위젯 설정 주어진 항목과 열이 에 있습니다.

[...]

가장 먼저 할 일은 우리가 상단에 상품을 추가 예를 들어, 귀하의 경우, 항목을 추가 한 다음 바로 특정 열에서 위젯을 추가하는 것입니다 다음 두 번째 열에 배치 : 그것은 작동

item = QTreeWidgetItem() 
self.tree_parameters.addTopLevelItem(item) 
widget = QSpinBox() 
widget.setValue(5) 
self.tree_parameters.setItemWidget(item, 1, widget) 

enter image description here

+0

을! 감사!!! – OriolBur

관련 문제