Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Qt] MainWindow + MdiArea

Sujet résolu
Anonyme
    1 juin 2008 à 15:43:28

    Bonjour :) .

    Après lecture du tuto qui vient de sortir, je me suis attelé à la tâche de créer un éditeur de texte très minimaliste, mais les difficultés commencent déjà...

    J'arrive sans aucun problème à afficher un menu, une toolbar, mais les deboires arrivent avec la gestion de la zone centrale en utilisant une QMdiArea.

    Je voulais créer un QAction connecté à un slot permettant la création d'un nouveau "fichier" (en fait, une nouvelle QMdiSubWindow).

    Voilà le code concerné :

    void MainWindow::newFile()
    {
        QTextEdit* subWindow = new QTextEdit;
        centralArea->addSubWindow(subWindow);
    }
    


    Lorsque j'exécute le programme et crée un nouveau "fichier", absolument rien ne se passe, si ce n'est une augmentation de la mémoire prise par le programme.

    Bref, j'en appelle à vos lumières, merci d'avance, toute aide est la bienvenue !

    EDIT : bon, en ajoutant subWindow->show(); une fenêtre apparaît une fraction de seconde avant de disparaître :D .
    • Partager sur Facebook
    • Partager sur Twitter
      1 juin 2008 à 15:49:40

      j'ai déjà eu ce problème, ayant passé un bout de temps avant de trouver la solution :

      void MainWindow::newFile()
      {
          QTextEdit* subWindow = new QTextEdit;
          QMdiSubWindow win = centralArea->addSubWindow(subWindow);
          win->show();
      }
      

      • Partager sur Facebook
      • Partager sur Twitter
      Altarapp.com - Applications, Code Snippets, API Wrappers et etc, le tout en C# le plus clair du temps!
        1 juin 2008 à 15:49:48

        montre ton code en entier, ça peut venir d'autre part (un connect foireux, manquement de la macro Q_OBJECT,...)
        • Partager sur Facebook
        • Partager sur Twitter
        Anonyme
          1 juin 2008 à 15:52:30

          Merci beaucoup shadosan, ça a effectivement réglé le problème :) .

          @minirop : je savais que ça ne pouvait que venir de ce bout de code, un qApp->quit(); fonctionnait sans problème ^^ .
          Merci quand même ;) .
          • Partager sur Facebook
          • Partager sur Twitter

          [Qt] MainWindow + MdiArea

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown