Qt Creator:QTabWidget:我无法删除选项卡

Posted

技术标签:

【中文标题】Qt Creator:QTabWidget:我无法删除选项卡【英文标题】:Qt Creator: QTabWidget: I can't remove a tab 【发布时间】:2015-10-08 02:04:52 【问题描述】:

对不起我的英语。我是 Qt 的新手,在我的项目中,用户可以从一个选项卡移动到下一个选项卡。 (按钮槽:ui->Pestanas->insertTab(1, ui->Pestana_Orden_Trabajo, "Orden de Trabajo"); ui->Pestanas->setCurrentIndex(1); )

它有效,但我想在窗口第一次出现时显示第一个选项卡。 我试过这个:

Partes::Partes(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::Partes)

    ui->setupUi(this);

    ui->Pestanas->setCurrentIndex(0);
    ui->Pestanas->removeTab(1);
    ui->Pestanas->removeTab(2);


当您第一次将 QTabWidget 默认表单包含在 ui 中时,它会使 QTabWidget 默认表单附带的第二个选项卡消失。但是我添加的用于设计我希望它带入的小部件的选项卡并没有消失。

有人知道怎么做吗?

感谢回复!

【问题讨论】:

【参考方案1】:

解决了。 问题是,当它第一次删除索引时,索引发生了变化,所以当我删除索引 1 时,索引从 0,1,2 变为 0,1。第二次删除尝试删除在我第一次删除时停止存在的索引 2。 所以解决办法是:

Partes::Partes(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::Partes)

    ui->setupUi(this);

    ui->Pestanas->setCurrentIndex(0);
    ui->Pestanas->removeTab(1);
    ui->Pestanas->removeTab(1);


或者:

Partes::Partes(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::Partes)

    ui->setupUi(this);

    ui->Pestanas->setCurrentIndex(0);
    ui->Pestanas->removeTab(2);
    ui->Pestanas->removeTab(1);


如何将此帖子标记为已解决?

【讨论】:

给自己最好的答案

以上是关于Qt Creator:QTabWidget:我无法删除选项卡的主要内容,如果未能解决你的问题,请参考以下文章

QT Creator 无法创建纯 C++ 项目或 HTML5 项目(QT Creator 直接关闭)

QT Creator 无法工作

为啥我用小写字母命名小部件类后,qt-creator 无法构建?

无法从 Qt Creator 部署 Qt 项目

Qt Creator 2.7.1 和 Qt 4.8.4 无法远程调试库

无法让 Qt Creator 调试在 Windows 10 上运行