仅 QT TabBar 侧面板
QT TabBar side pane only
我添加了一个可检查的 QTabWidget。当未选中 TabBar 时,我想隐藏所有选项卡(仅窗格),反之亦然。有什么办法可以只让窗格不可见,标签栏不会消失吗?
我在输出中添加了与我想要的相关的图像参考:
最初两个选项卡窗格都是最小化的,当我单击选项卡时它会最大化:
单击窗格后最大化,我再次单击它会最小化,反之亦然:
而不是使用 QTabWidget。您可以使用 QTabBar 并实现您希望隐藏相应小部件的功能。
这里是 qt creator 中新的小部件应用程序示例的一些示例代码
#include "MainWindow.h"
#include "ui_MainWindow.h"
#include <QTabBar>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
m_tabbar = new QTabBar(this->centralWidget());
m_tabbar->addTab("Hello");
m_tabbar->addTab("World");
m_tabbar->setShape(QTabBar::RoundedWest);
m_tabbar->setGeometry(0,0,this->height(), 200);
connect(m_tabbar, SIGNAL(tabBarClicked(int)), this, SLOT(changedTab(int)));
}
MainWindow::~MainWindow()
{
delete ui;
}
void
MainWindow::changedTab(int idx)
{
m_tabbar->setCurrentIndex(idx);
ui->stackedWidget->setCurrentIndex(idx);
}
我添加了一个可检查的 QTabWidget。当未选中 TabBar 时,我想隐藏所有选项卡(仅窗格),反之亦然。有什么办法可以只让窗格不可见,标签栏不会消失吗? 我在输出中添加了与我想要的相关的图像参考:
最初两个选项卡窗格都是最小化的,当我单击选项卡时它会最大化:
单击窗格后最大化,我再次单击它会最小化,反之亦然:
而不是使用 QTabWidget。您可以使用 QTabBar 并实现您希望隐藏相应小部件的功能。
这里是 qt creator 中新的小部件应用程序示例的一些示例代码
#include "MainWindow.h"
#include "ui_MainWindow.h"
#include <QTabBar>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
m_tabbar = new QTabBar(this->centralWidget());
m_tabbar->addTab("Hello");
m_tabbar->addTab("World");
m_tabbar->setShape(QTabBar::RoundedWest);
m_tabbar->setGeometry(0,0,this->height(), 200);
connect(m_tabbar, SIGNAL(tabBarClicked(int)), this, SLOT(changedTab(int)));
}
MainWindow::~MainWindow()
{
delete ui;
}
void
MainWindow::changedTab(int idx)
{
m_tabbar->setCurrentIndex(idx);
ui->stackedWidget->setCurrentIndex(idx);
}