Как убрать пустую область QTabWidget - PullRequest
0 голосов
/ 14 апреля 2020

TabBar скрыт в пользовательском TabWidget, и есть некоторые поля, которые я не могу скрыть

Click to view pictures

Попробуйте setContentsMargins(0, 0, 0, 0) Не работает

пример :


#include <QApplication>
#include <QMainWindow>
#include <QWidget>
#include <QHBoxLayout>
#include <QTabBar>
#include <QTabWidget>


int main(int argc, char **argv)
{
    QApplication app(argc, argv);

    QMainWindow mainWindow;
    mainWindow.resize(900, 900);

    QWidget *contentWidget = new QWidget(&mainWindow);
    QTabWidget *tabWidget = new QTabWidget(contentWidget);

    QWidget *myWidget = new QWidget;

    QPalette palette = myWidget->palette();
    myWidget->setAutoFillBackground(true);
    palette.setColor(QPalette::Window, QColor(255, 0, 255));
    myWidget->setPalette(palette);
    tabWidget->addTab(myWidget, "test");
    tabWidget->setTabPosition(QTabWidget::West);
    tabWidget->setContentsMargins(0, 0, 0, 0);

    tabWidget->tabBar()->setExpanding(false);
    tabWidget->tabBar()->hide();

    QHBoxLayout layout;
    layout.setMargin(0);
    layout.setSpacing(0);
    layout.setContentsMargins(0, 0, 0, 0);
    layout.addWidget(tabWidget, 1);

    contentWidget->setLayout(&layout);
    contentWidget->show();

    mainWindow.setCentralWidget(contentWidget);
    mainWindow.show();

    return app.exec();
}

Я искал ответы во многих местах, но не нашел желаемого результата.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...