[Resuelto] QTabWidget esconder una pestaña
-
wrote on 8 Oct 2015, 01:23 last edited by Alberto 10 Aug 2015, 18:03
Hola a todos,
En el proyecto que estoy trabajando el usuario puede pasar de un tab al siguiente cuando clica en un botón que hay en el tab anterior. ( En el slot del botón: ui->Pestanas->insertTab(1, ui->Pestana_Orden_Trabajo, "Orden de Trabajo");
ui->Pestanas->setCurrentIndex(1); )Hasta aquí todo bien, pero quiero que al iniciar la ventana sólo se visualice la primera pestaña y conforme se clique en los botones aparezcan las otras dos. Lo que he intentado es esto:
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); }
Hace desaparecer la segunda pestaña que viene por defecto al colocar el QTabWidget, pero la pestaña que añadí para editar su aspecto no la hace desaparecer.
¿Qué puedo hacer?
Muchas gracias
-
wrote on 8 Oct 2015, 15:49 last edited by
Resuelto.
El problema era que cuando hace el primer remove los indices cambian, así que cuando elimino el indice 1 los indices pasan de ser 0,1,2 a ser 0,1. El segundo remove intenta eliminar el indice 2 pero este dejó de existir cuando hace el primer remove.
Así que la solución es esta: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); }
Or:
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); }
Como puedo marcar este post como resuelto?
2/2