gpt4 book ai didi

c++ - QWizardPages 保持自己的最小尺寸

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:36:26 26 4
gpt4 key购买 nike

我正在使用 Qt(版本 4.6,在 Windows XP 32 位上,并在 Qt Creator 2.0.0 中编译)并试图让 QWizard 运行。

第一个问题:

到目前为止,我的QWizard 中有三个QWizardPages。每个页面的布局都应用了 QVBoxLayout。我的第一页内容非常少(只有三行 QLabel),但由于某种原因,QLabel 与“< Back”、“Next >”和“Cancel”按钮 Pane 之间有相当多的空白。我希望每个页面根据其中的内容具有最少的空白。过去,当我将 QVBoxLayout 放入无父 QWidget(它自己的窗口)中时,窗口总是小到足以修复 QVBoxLayout。现在有额外的空格。是否有一些我必须关闭或打开的选项,以便 QWizardPages 尽可能小?

第二个(很可能与第一个有关)问题:

此外,我的第二页比第一页大得多,所以当我到达第二页并返回第一页时,第一页保持与第二页相同的大小,但只有在我访问了第二页。这是错误吗?

我正在做的唯一几何设置是当我做一个

move(50, 50);

在 QWizard 构造函数中。没有调整大小......没有明确的。我试图让布局发挥它们的魔力。

感谢您的帮助。

最佳答案

为了解决这个问题,我创建了一个 QWizard 的子类,并创建了一个私有(private)插槽,如下所示:

void ChildClass::fitContents(int id)
{
adjustSize(); // this automagically resizes the window to fit the contents
}

并让它在每次页面更改时调用它,如下所示:

connect(this, SIGNAL(currentIdChanged(int)), this, SLOT(fitContents(int)));

关于c++ - QWizardPages 保持自己的最小尺寸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3497655/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com