最近Pythonの勉強を始めて、今はPyQt Librariesを使ってGUI付きのソフトウェアを作っています。
これが私の問題です:私はスクロールエリアを作成し、このスクロールエリアにQGridLayoutを含むウィジェットを配置しました。
sa = QtGui.QScrollArea()
sa_widget = QtGui.QWidget()
self.sa_grid.setSizeConstraint(QtGui.QLayout.SetMinAndMaxSize)
sa_widget.setLayout(self.sa_grid)
sa.setWidgetResizable(True)
sa.setWidget(sa_widget)
次に、10 個の QLabel を追加します (これはもちろん単なる例です。この例では、垂直レイアウトと同様に QGridLayout を使用しています):
i = 0
while i<100:
i = i +1
add = QtGui.QLabel("Row %i" % i)
self.sa_grid.addWidget(add)
次に、関数「function_name」を呼び出すボタンを作成します。この関数が行を削除するようにしたいと思います。これまでのところ、これは私が書いたものです。
tmp = QtGui.QWidget()
tmp = self.sa_grid.itemAt(0)
self.sa_grid.removeItem(tmp)
最初の行を削除し、グリッドレイアウトの x 行ごとに行 x-1 になりますが、「行 1」というテキストは削除されないため、同じ行に「行 0」と「行 1」が表示されます。
誰でも私を助けることができますか?
事前にどうもありがとう、ダビデ