我正在尝试制作一个下拉窗口 我是通过组合框执行此操作,并将小部件隐藏在该组框内 我正在连接goupbox点击隐藏窗口小部件的功能,然后调整主窗口小部件的大小,但是我遇到的问题是它在调用调整大小之前似乎没有更新其UI,所以它认为它比它意味着它永远不会缩小到它应该的大小。
## What I'm connecting
self.AsettingsGbox.clicked.connect(self.AsettingsGboxFUNC)
## The hidden Widget's height
self.AsWidgetH = self.AsettingsWidget.sizeHint().height()
def AsettingsGboxFUNC(self):
'''
Collapsable group box
'''
if self.AsettingsGbox.isChecked():
self.AsettingsWidget.show()
newHeight = self.size().height() + self.AsWidgetH
else:
self.AsettingsWidget.hide()
newHeight = self.size().height() - self.AsWidgetH
# Problem where the UI has not finished updating before the resize is triggered
## Main Window widget
#self.repaint()
#self.update()
#self.updateGeometry()
## Widget inside the group box that gets hidden
#self.AsettingsWidget.repaint()
#self.AsettingsWidget.update()
#self.AsettingsWidget.updateGeometry()
## Group Box
#self.AsettingsGbox.repaint()
#self.AsettingsGbox.update()
#self.AsettingsGbox.updateGeometry()
self.resize(self.size().width(), newHeight)
正如您所看到的,我已经尝试了所有更新,但这似乎并不坚持。我也尝试过processEvents,但这也没有。
如果我手动在窗口上运行self.resize(self.size()。width(),newHeight),在建立之后,调整大小会起作用,这就是为什么我认为它不会更新ui显示。< / p>
对此的任何想法都将不胜感激!