我希望qt窗口按比例调整大小

时间:2010-09-19 09:36:41

标签: qt resize window

正如标题所说,当我调整窗口大小时,如果我将其加宽,我希望窗口的高度调整大小与窗口具有相同的比例。 我只是在paintEvent中执行逻辑,但它不能正常工作,有些人可以解决吗?

我不认为在resizeEvent中调整大小是一个很好的方法,最好的结果是窗口闪烁,但我想要流畅的方式

1 个答案:

答案 0 :(得分:1)

请勿在{{1​​}}中进行,而是paintEvent。然后,您可以比较void QWidget::resizeEvent ( QResizeEvent * event )event->size()以查看更改了哪个维度,然后调整大小以使其他维度与更改的维度相匹配。

编辑:请注意,当您在resizeEvent函数内调整窗口大小时,您将创建另一个resize事件。所以请确保只有在窗口出现错误的宽高比的情况下才会调整大小,否则会产生无限递归函数和堆栈溢出。