2017-03-04 59 views
0

我已经定义了一个2X6 QGridlayout,里面填充了Qlabels,但后来我想将标签文本或属性更改为其他内容。我怎样才能做到这一点?如何修改Qgridlayout的小部件的属性?

这是我如何PyQt4中定义的Qgridlayout

gridLayout = QtGui.QGridLayout(self) 
for i in range(1, 7): 
     for j in range(1, 3): 
      gridLayout.addWidget(QtGui.QLabel("label" + str(i) + str(j)), i, j) 
+2

'gridLayout.itemAtPosi (1,1).widget()'。 – ekhumoro

回答

0

我设法保持由环产生的标签的参考以后使用这样的:

gridLayout = QtGui.QGridLayout(self) 
labels = {} 
for i in range(1, 7): 
    for j in range(1, 3): 
     labels[(i, j)] = QtGui.QLabel('label {},{}'.format(i, j)) 
     gridLayout.addWidget(labels[(i, j)], i, j) 

如果我想修改第一列和第一行的第一个标签,我只需要这样做

labels[(1,1)].setText("modified")