QTabWidget角QToolButton小部件正在消失
QTabWidget corner QToolButton widget disappearing
我有一个QTabWidget,它具有动态添加和删除的选项卡。我还有一个QToolButton设置为角落小部件,以便处理其clicked()
信号上的添加事件。
虽然添加非常好,但从小部件中删除所有选项卡会导致按钮消失。我曾尝试使用样式表创建一个宽度为0的不可见的第一个选项卡,但这种方法失败了。可能是因为我在所有选项卡上都有setTabsClosable(true)
,这为关闭按钮腾出了空间。
我还认为,当QTabBar在没有标签的情况下将其高度折叠为0时,按钮就会消失。我尝试过tabBar()->setMinimumHeight(30);
,但这个变通方法也没有奏效。有什么想法吗?
这里我的代码样本再现问题:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "QToolButton"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
ui->tabWidget->setTabsClosable(true);
ui->tabWidget->tabBar()->setMinimumHeight(30);
QToolButton *btn = new QToolButton(ui->tabWidget);
btn->setText("Add new");
btn->setCursor(Qt::ArrowCursor);
btn->setAutoRaise(true);
ui->tabWidget->setCornerWidget(btn, Qt::TopLeftCorner);
qDebug() << ui->tabWidget->cornerWidget(Qt::TopLeftCorner);
connect(ui->tabWidget, SIGNAL(tabCloseRequested(int)), this, SLOT(closeTab(int)));
}
MainWindow::~MainWindow()
{
delete ui;
}
//SLOT
void MainWindow::closeTab(int index)
{
ui->tabWidget->removeTab(index);
if(ui->tabWidget->count() == 0)
qDebug() << ui->tabWidget->cornerWidget(Qt::TopLeftCorner);
}
我已经解决了这个问题。您需要固定QToolButton
和QTabBar
的最小高度。
到目前为止,我已经在python中运行了以下代码:
def initialise()
# Initialise your Tab Widget however you need
self.tabCloseRequested.connect(self.removeTab)
def removeTab(self,index):
h = self.cornerWidget().height()
self.removeTab(index)
self.update()
if self.count() == 0:
self.cornerWidget().setMinimumHeight(h)
self.setMinimumHeight(h)
相关文章:
- 比较并显示使用最小值(a,b)和最大值(a、b)升序排列的4个数字
- 最小硬币更换问题(自上而下方法)
- Qt VTK交互风格的信号到小部件
- 芬威克树(BIT).找到具有给定累积频率的最小索引,单位为 O(logN)
- 如何在Qt窗口小部件中使用QStringView(或QStringRef)
- 使用递归的数组的最小值.这是怎么回事
- 为什么在浮点中从大到小会引入更多的误差
- 找到两对数字,使它们的乘积的绝对差最小化
- 将地址分配给本地指针后,公共对象的变量将消失
- 如何使用boost::具有嵌套结构和最小代码更改的序列化
- 最大和最小 1 C++函数
- 如何创建一个函数来计算并返回平均值、最大值和最小值
- 我可以做些什么来消除或最小化这种将提供相同功能和行为的代码重复
- 最小化/最大化后,MFC窗口图形消失了
- C++ 创建小部件数组
- 当在另一个较小的对象Opengl后面时,“大对象”将消失
- QTabWidget角QToolButton小部件正在消失
- 当程序最小化时位图消失
- QT c++中的消失小部件
- 查找滚动条消失时QScrollArea小部件的大小