【发布时间】:2013-05-28 23:14:35
【问题描述】:
我在 Windows 8 上使用使用 GCC 4.8 静态构建的最新稳定版 Qt 5。
我用一个按钮创建了一个简单的基于 QMainWindow 的应用程序。当我执行setFixedSize(minimumSizeHint()) 时,窗口会根据需要调整大小并且最大化按钮会被禁用,但是当我将指针悬停在边缘上时,我仍然可以看到双面箭头,并且可以通过垂直调整窗口大小14 像素。如果添加另一个按钮或状态栏 - 没有任何变化。如果我将 14 像素(或更多)添加到最小高度 - 它会真正固定,但我仍然可以看到箭头,这是不正常的。
这很奇怪,因为完全相同的代码(及其变体)在 PyQt4 中运行良好(请注意,我现在使用 C++)。我试过了:
-
layout()->setSizeConstraint(QLayout::SetFixedSize)- 相同的行为 -
setWindowFlags(Qt::MSWindowsFixedSizeDialogHint)- 窗口消失了
有什么办法解决这个问题?
UPD:我在添加另一个按钮时出错了(显然,这与添加状态栏不同) - 无法再调整窗口大小(不过,为什么要Qt 让我将窗口的高度设置为小于它喜欢的高度...),但箭头仍然存在。
UPD 2:找到 very similar question,但答案没有帮助(原因在问题本身的评论中描述)。
【问题讨论】:
-
哇,我没有想到,我调用
setWindowFlags和show的顺序可能很重要:) 如果我把它放在show之前 - 就像一个魅力。如果您将此作为答案发布-我会接受。 The bug我提交的早一点。 -
我将评论更改为答案。
标签: qt user-interface qt5