是否可以在QMainWindow周围删除单个QWidget的边框?

时间:2016-09-20 11:32:28

标签: c++ qt

这是一个非常简单的重现问题。使用带有QMainWindow的Qt Creator创建一个新项目。使用设计器添加一个小部件(它并不重要),然后使用右键设置布局(任何布局与单个小部件一样,结果始终相同)。

小部件周围会有灰色边框。我想删除这个边框,以便小部件占据整个主窗口区域(Qt总是命名为centralWidget)。基本上单个小部件是我想要看到的。

这可能吗?如果是这样,怎么样?

2 个答案:

答案 0 :(得分:2)

是的,这是可能的。您所需要的只是将this的边距设置为var $ = function(param) {}; var elem = this; $ // the library elem // the element $(elem); // the usage 。 (请注意,您应首先设置布局)

在属性面板中,将以下属性设置为centralWidget

  • 0
  • 0
  • layoutLeftMargin
  • layoutTopMargin

enter image description here

另请注意,使用layoutRightMargin(非layoutBottomMargin)作为主应用程序窗口是完全有效的,因此如果您的应用只有一个小部件,则您不会需要{{1完全没有。它足以QWidget该小部件。

答案 1 :(得分:0)

上面的答案是正确答案,但我也想分享我发现的内容。我基本上想创建一个占据整个屏幕的QGraphcisView。我想到了上面提到的方法,嗨,我是Frogatto的回答。另一种方法是使用以下代码创建一个简单的应用程序:

#include <QCoreApplication>
#include <QApplication>
#include <QGraphicsView>

int main(int argc, char *argv[])
{
    //QCoreApplication a(argc, argv);
    QApplication app(argc, argv);

    QGraphicsView *view = new QGraphicsView();
    view->showFullScreen();

    return app.exec();
}

这个.pro文件:

QT += core gui widgets

CONFIG += c++11

TARGET = Test
CONFIG += console
CONFIG -= app_bundle

TEMPLATE = app

SOURCES += main.cpp

这也做我想要的!也许它可以帮助别人。