Недавно я начал изучать Python, и сейчас я создаю программное обеспечение с графическим интерфейсом, используя библиотеки PyQt.
Вот моя проблема: я создаю область прокрутки, я помещаю в эту область прокрутки виджет, который содержит 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)
Затем я создаю кнопку, которая вызывает функцию «имя_функции», я хочу, чтобы эта функция удаляла строку, пока это то, что я написал:
tmp = QtGui.QWidget()
tmp = self.sa_grid.itemAt(0)
self.sa_grid.removeItem(tmp)
Он удаляет первую строку, и каждая строка x gridlayout становится строкой x-1, однако текст «Строка 1» не удаляется, поэтому я вижу «Строка 0» и «Строка 1» в одной строке.
Кто-нибудь может мне помочь?
Заранее большое спасибо, Давиде