如何在QTabWidget中扩展窗口小部件边界

时间:2013-03-13 21:35:14

标签: c++ qt

enter image description here

我想从QTabWidget中消除边框,如图所示。选项卡标签的下半部分应该遮挡它们相交的小部件。这可能吗?代码如下:

#include "mainwindow.h"
#include "ui_mainwindow.h"

#include "QGraphicsScene"
#include "QTableWidget"
#include "QGraphicsView"
#include "QTextEdit"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    QGraphicsView* left = new QGraphicsView(new QGraphicsScene);
    QTextEdit* right = new QTextEdit;

    QTabWidget* tab = new QTabWidget(this);
    tab->insertTab(0, left, "Left");
    tab->insertTab(1, right, "Right");

    setCentralWidget(tab);
}

MainWindow::~MainWindow()
{
    delete ui;
}

1 个答案:

答案 0 :(得分:0)

您可以使用QWidget::layout()QLayout.setContentsMargins ( int left, int top, int right, int bottom )方法。例如:

ui->centralwidget->layout()->setContentsMargins(9,9,9,9);
tab->layout()->setContentsMargins(9,9,9,9);

应该做出你想要的改变。但我建议在Qt设计器中而不是在代码中创建和修改表单。