Why does the border of QDockWidget become wider setting centerwidget stylesheet?

48 views Asked by At

Here is my code:

QDockWidgetTest::QDockWidgetTest(QWidget *parent)
: QMainWindow(parent)
{
    QDockWidget* dockWidget = new QDockWidget();
    QTabWidget* tabWidget = new QTabWidget();
    tabWidget->addTab(new QWidget(), "1");
    tabWidget->addTab(new QWidget(), "2");
    dockWidget->setWidget(tabWidget);
    addDockWidget(Qt::DockWidgetArea::LeftDockWidgetArea , dockWidget);

    QWidget* widget = new QWidget();
    QHBoxLayout* layout = new QHBoxLayout();
    layout->addWidget(new QLabel("content"));
    widget->setLayout(layout);
    layout->setSpacing(0);
     
    //set central widget stylesheet
    QColor whiteColor(255, 255, 255);
    QString styleSheet = QString("QWidget { background-color: %1 }").arg(whiteColor.name());
    widget->setStyleSheet(styleSheet);
    
    setCentralWidget(widget);
    
    showMaximized();

}

When centeralwidget has stylesheet, the border of QDockWidget will become wider, here's how it looks:

Result

How to solve it?

0

There are 0 answers