Qt删除QVBoxLayout上的小部件之间的空白空间

Tat*_*nho 7 c++ qt spacing qvboxlayout

我有烦人的问题.我创建了QVBoxLayout,我添加了我的小部件.这是我的构造函数中的示例:

layout = new QVBoxLayout;
layout->setMargin(0);
layout->setContentsMargins(QMargins(0,0,0,0));
layout->setSpacing(0);
Run Code Online (Sandbox Code Playgroud)

然后我有添加小部件的功能.

layout->addWidget(_wave);
Run Code Online (Sandbox Code Playgroud)

_wave是我自己的小部件.但是你可以添加你想要的任何东西,例如QButton.

我想要实现什么? 类似这样,但没有任何空格beidgeween添加到布局.只是QButtons或其他小部件,相互粘贴.

我添加了setMargins,setSpacing等等.请帮助我,我真的不知道该怎么做.

在此输入图像描述

对不起颜色,但我想提到我想要实现的目标.我有mainWindow,我在其上添加了QWidget.这个小部件有蓝色背景.然后到布局,我添加了一些小部件,在这个图像上是橙色的.我只是想确定,小部件之间的这个蓝色背景是不可见的.我希望在widget下有widget,没有任何空间.

Bal*_*ude 5

我知道这个问题是一年前发布的,但如果它可以帮助某些人节省一些时间,我会很高兴。我遇到了同样的问题,并且能够通过设置来解决它:

  • QFrame.setFrameShape()NoFrame
  • QFrame.setLineWidth() 到 0。

下图是QtextEdit使用所述方法将 2并排放置在布局中的结果。

在此处输入图片说明

http://doc.qt.io/qt-5/qframe.html#lineWidth-prop