Qt:: 如何消除 qmainwindow 中小部件和工具栏之间的间隙
Posted
技术标签:
【中文标题】Qt:: 如何消除 qmainwindow 中小部件和工具栏之间的间隙【英文标题】:Qt:: how to get rid of the gap between widget and toolbar in a qmainwindow 【发布时间】:2013-03-06 14:45:51 【问题描述】:基本上我在主窗口中有一个 QLabel*。 我试图将它设置为centralWidget。当程序运行时,如果 mainWindow 保持原来的大小就可以了。但是,如果我放大尺寸,QLabel 和工具栏之间突然出现了不知从何而来的间隙!!!!我该怎么做才能摆脱它!!!
有趣的是,虽然创建了间隙,但 QLabel 的 x 和 y 坐标并没有改变!!!!怎么会这样!!!!
.................................................. .........................
我使用 QTCreator 制作了一个 ScrollArea 作为 centralWidget。这样,当我放大 QMainWindow 时,ScrollArea 会自动放大。然而,问题是。当我尝试调用 setWidget 函数将 Label 设置到 ScrollArea 中时,再次出现上述同样的问题!!!!
有人,请帮忙!!!!!!!!!!!!!
这是我尝试过的,但显然不起作用:
代码是:
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
ui->setupUi(this);
imageLabel = new QLabel();
image = new QPixmap(480,320);
image->fill();
imageLabel->setPixmap(*image);
setCentralWidget(imageLabel);
【问题讨论】:
邮政编码,以便我们了解您为什么会出现这种行为。父层次结构或布局可能有问题。 这将有助于查看用户界面。那里可能有你的标签应该是子级的布局或小部件。 【参考方案1】:对我来说,这看起来像是一个布局问题,您已经设置了标签的大小,一旦您调整窗口大小,它就会保持已经设置的大小,除非您再次专门设置它的大小,或者您正在使用其中之一QLayout
布局管理器。
【讨论】:
重点是,我不需要调整标签的大小,但我需要它保持在原来的位置以上是关于Qt:: 如何消除 qmainwindow 中小部件和工具栏之间的间隙的主要内容,如果未能解决你的问题,请参考以下文章