1

groupBoxPyQt5 と QT Creator を使用して、アニメーション化された折りたたみ可能な UI を作成しようとしています。

がチェックされていない場合groupBox、その高さはいくつかの小さな値に縮小され、チェックされている場合、groupBoxその高さはsizeHint().height()

問題はgroupBox、レイアウトに別のものが存在する場合です。別の位置は、折りたたまれたサイズが変更されたgroupBoxことを反映していません。groupBox

groupBox折りたたみ時に底を強制的に移動させる方法はありますgroupBoxか?

これがどのように見えるか:

ここに画像の説明を入力


追加情報

UI レイアウト: ここに画像の説明を入力

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()
4

1 に答える 1