投稿コードは、5行のウィジェットで1つのウィンドウを作成します。 Push Button
をクリックすると.takeAt()
メソッドを使用するすべてのウィジェットからウィンドウをクリアできない関数が起動します。どうして?ウィジェットを削除するには
from PyQt4 import QtCore, QtGui
app = QtGui.QApplication([])
view = QtGui.QWidget()
view.setLayout(QtGui.QVBoxLayout())
def btnClicked():
items = []
for i in range(view.layout().count()):
item = view.layout().itemAt(i)
items.append(item)
for num, item in enumerate(items):
print 'taking out item:', num, item
view.layout().takeAt(num)
for i in range(5):
sublayout = QtGui.QHBoxLayout()
view.layout().addLayout(sublayout)
sublayout.addWidget(QtGui.QLabel('Label:'))
sublayout.addWidget(QtGui.QLineEdit('Text Edit'))
btn = QtGui.QPushButton('Push Button')
btn.clicked.connect(btnClicked)
sublayout.addWidget(btn)
view.show()
app.exec_()
ありがとう!いつものようにシャープ! – alphanumeric