赞
踩
QTabWidget 中的tab,采用hide(),close(),setHidden(true),setVisible(false)等方式都无法隐藏tab。
可以通过以下方式隐藏。
如要隐藏多个TAB,序号需要从大到小。
假如不显示TAB2,TB4,TAB6,代码如下:
ui->tabWidget->removeTab(5);
ui->tabWidget->removeTab(3);
ui->tabWidget->removeTab(1);
实际结果为:
先使用setTabEnabled()禁用需要隐藏的tab,然后调用setStyleSheet()将禁用的tab宽度设为0,文字颜色设为透明。
ui->tabWidget->setTabEnabled(index, false);
ui->tabWidget->setStyleSheet("QTabBar::tab:disabled {width: 0; color: transparent;}");
不过这种方法显示效果不太好,也显得复杂。
备注:实战示例,解疑答惑。
--不间端地思考,实时地批判你的工作!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。