【问题标题】:Qt Creator: QTabWidget: I can't remove a tabQt Creator:QTabWidget:我无法删除选项卡
【发布时间】: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 默认表单附带的第二个选项卡消失。但是我添加的用于设计我希望它带入的小部件的选项卡并没有消失。

有人知道怎么做吗?

感谢回复!

【问题讨论】:

    标签: tabs 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);
    
    }
    

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

    【讨论】:

    • 给自己最好的答案
    猜你喜欢
    • 2015-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-05
    • 2012-09-24
    相关资源
    最近更新 更多