Я работаю над приложением PyQt. В настоящее время есть панель состояния (определенная как QWidget
), которая содержит QHBoxLayout
. Этот макет часто обновляется с помощью QPushButton
s, созданного другой частью приложения.
Всякий раз, когда появившиеся кнопки необходимо изменить (что довольно часто), вызывается эффект обновления. Существующие кнопки удаляются из макета (путем вызова layout.removeWidget(button)
, а затем button.setParent(None)
), а новые кнопки добавляются в макет.
Как правило, это работает. Но иногда, когда я вызываю button.setParent(None)
на кнопке для удаления, это заставляет ее выскочить из приложения и начать плавать в отдельном кадре.
Как удалить кнопку из макета и убедиться, что она не начинает плавать?