Я пытаюсь создать пользовательский интерфейс с анимированным складным groupBox
, используя PyQt5 и QT Creator.
Если флажок groupBox
не установлен, его высота уменьшается до небольшого значения, если установлен флажок groupBox
, его высота увеличивается до sizeHint().height()
.
Проблема в том, что в макете присутствует другой groupBox
. Позиция othergroupBox
не отражает изменения размера свернутого groupBox
.
Есть ли способ заставить дно groupBox
двигаться при схлопывании groupBox
?
Вот как это выглядит:
Дополнительная информация
Макет пользовательского интерфейса:
groupBox
реализация изменения размера:
my_ui._ui.groupBox.toggled.connect(my_ui.group_box_size_change)
def group_box_size_change(self):
duration = 1000
self.animaiton_gb = QtCore.QPropertyAnimation(self._ui.groupBox, b"size")
self.animaiton_gb.setDuration(duration)
self.animaiton_gb.setStartValue(QtCore.QSize(self._ui.groupBox.width(), self._ui.groupBox.height()))
if self._ui.groupBox.isChecked():
self.animaiton_gb.setEndValue(QtCore.QSize(self._ui.groupBox.width(), self._ui.groupBox.sizeHint().height()))
else:
self.animaiton_gb.setEndValue(QtCore.QSize(self._ui.groupBox.width(), 49))
self.animaiton_gb.start()