在C++中,您可以使用QTabWidget的setTabPosition()和setTabShape()函数来设置QTabWidget仅显示TabBar。以下是一个示例代码片段:
QTabWidget *tabWidget = new QTabWidget(this); // 创建QTabWidget对象
// 向QTabWidget添加Tab页
QWidget *page1 = new QWidget();
tabWidget->addTab(page1, "Page 1");
QWidget *page2 = new QWidget();
tabWidget->addTab(page2, "Page 2");
// 设置Tab位置为无位置(即不显示Tab内容)
tabWidget->setTabPosition(QTabWidget::NoTab);
// 设置Tab形状为无形(即不显示Tab边框)
tabWidget->setTabShape(QTabWidget::Triangular);
// 获取QTabBar并设置其高度,以便只显示TabBar
QTabBar *tabBar = tabWidget->tabBar();
tabBar->setFixedHeight(tabBar->sizeHint().height());
在这个示例代码中,我们首先创建了一个QTabWidget对象,然后向其添加了两个页面。接下来,我们使用setTabPosition()函数将Tab位置设置为无位置,这样就不会显示Tab内容了。然后,我们使用setTabShape()函数将Tab形状设置为无形,这样就不会显示Tab边框了。最后,我们获取QTabBar并将其高度设置为默认值,以便只显示TabBar。
请注意,在调用setTabPosition()和setTabShape()函数之后,必须重新调整QTabWidget的大小以适应TabBar的高度。您可以通过使用setFixedSize()或setFixedHeight()函数来设置QTabWidget的大小,也可以通过在父QWidget中添加QVBoxLayout并将QTabWidget放置在其中来实现自适应大小。