2011-12-18 5 views
2

PyQT4でループを使ってボタンのグリッドを作成する方法はありますか?PyQT4のループを使ってグリッドを作成する

したがって、たとえば、の効果を持っているもの:

for j in range(0, 10): 
    for k in range(0, 10): 
     grid.addbutton(j, k) 

ありがとうございました。

答えて

5

あります。この場合はQGridLayoutが便利です。ここ

は最小限の例である:

import sys 
from PyQt4 import QtGui 

app = QtGui.QApplication(sys.argv) 
widget = QtGui.QWidget() 
layout = QtGui.QGridLayout() 

buttons = {} 

for i in range(10): 
    for j in range(10): 
     # keep a reference to the buttons 
     buttons[(i, j)] = QtGui.QPushButton('row %d, col %d' % (i, j)) 
     # add to the layout 
     layout.addWidget(buttons[(i, j)], i, j) 

widget.setLayout(layout) 
widget.show() 
sys.exit(app.exec_()) 

結果:

QGridLayout

関連する問題