Bonjour,
Voila mon probleme, j'ai une methode qui permet d'ajouter un nouvel onglet :
1 2 3 4 5 6 7 8 9 10 11 12
| void FenPrincipale::nouvelOnglet()
{
zoneTexte[nb_onglets] = new QTextEdit;
zoneTexte[nb_onglets]->setText(chaine[nb_onglets]); // pour debug
sousFenetre[nb_onglets] = zoneCentrale->addSubWindow(zoneTexte[nb_onglets]);
zoneCentrale->addSubWindow(sousFenetre[nb_onglets]);
nb_onglets++;
} |
le problème est que suivant le moment auquel je fais appel a cette méthode, il arrive que les onglets ne soit pas créés correctement (on les voit mais on ne peut pas les cliquer).
Lorsque j'appelle la méthode directement dans le constructeur de ma classe, les onglets sont correctement créés :
Mais si j'appelle la méthode au travers d'un slot de connexion (relié au signal bouton nouvel onglet et placé a la fin du constructeur), alors l'onglet créé devient visible mais non sélectionnable.
connect(actionNouvelOnglet, SIGNAL(triggered()), this, SLOT(nouvelOnglet()));
Le slot de connexion est defini dans le .h comme suit :
1 2 3
| public slots :
void nouvelOnglet(); |
Auriez vous une explication au fait que les onglets créés par un appel explicite dans le constructeur fonctionnent parfaitement et ceux créés par l'appel de la méthode via le signal ne fonctionnent pas ?
Merci.
Partager