IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Qt Discussion :

A la fermeture de l'application le debugguer de Visual Studio se lance


Sujet :

Qt

  1. #1
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    240
    Détails du profil
    Informations personnelles :
    Âge : 30
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 240
    Points : 132
    Points
    132
    Par défaut A la fermeture de l'application le debugguer de Visual Studio se lance
    Bonjour,
    J'ai un problème avec mon code : celui-ci s'exécute bien mais à la fermeture de mon application, j'ai une fenêtre "Débogueur juste-à-temps Visual Studio" qui se lance.

    Mon code :
    .h
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    #ifndef CAESAR_H
    #define CAESAR_H
    #include <QtGui>
     
    class Caesar : public QWidget
    {
        Q_OBJECT
     
        public:
            Caesar();
            ~Caesar();
     
        public slots:
            //
     
        private:
            // Crypt
            QTextEdit       *m_textToCrypt;
            QTextEdit       *m_textCrypted;
            QPushButton     *m_crypt;
            QSpinBox        *m_substitution;
     
            // Uncrypt
            QTextEdit       *m_textToUncrypt;
            QTextEdit       *m_textUncrypted;
            QPushButton     *m_uncrypt;
    };
     
    #endif // CAESAR_H
    .cpp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    #include "Caesar.h"
     
    Caesar::Caesar() : QWidget()
    {
        setWindowTitle( tr( "Caesar cipher" ) );
     
        QWidget *cryptWidget = new QWidget;
            QLabel *textToCrypt = new QLabel( tr( "Text to crypt :" ) );
            m_textToCrypt = new QTextEdit;
            m_crypt = new QPushButton( tr( "Crypt" ) );
            QLabel *textCrypted = new QLabel( tr( "Text crypted :" ) );
            m_textCrypted = new QTextEdit;
            QVBoxLayout *cryptLayout = new QVBoxLayout;
                cryptLayout->addWidget( textToCrypt );
                cryptLayout->addWidget( m_textToCrypt );
                cryptLayout->addWidget( m_crypt );
                cryptLayout->addWidget( textCrypted );
                cryptLayout->addWidget( m_textCrypted );
        cryptWidget->setLayout( cryptLayout );
     
        QTabWidget *tabWidget = new QTabWidget();
            tabWidget->addTab( cryptWidget, tr( "Crypt" ) );
            //tabWidget->addTab( uncryptWidget );
     
        QVBoxLayout *layout = new QVBoxLayout;
            layout->addWidget( tabWidget );
        setLayout( layout );
    }
     
    Caesar::~Caesar()
    {
        //
    }
    Quand je teste mon code en commentant, cette erreur se produit si je laisse ces lignes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    QLabel *textToCrypt = new QLabel( tr( "Text to crypt :" ) );
    m_textToCrypt = new QTextEdit;
    m_crypt = new QPushButton( tr( "Crypt" ) );
    QLabel *textCrypted = new QLabel( tr( "Text crypted :" ) );
    m_textCrypted = new QTextEdit;

    Mon widget est dans une subWindow dans un MdiArea d'un QMainWindow.


    EDIT :
    Avec ce code le problème survient au lancement du programme (immédiatement) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    #include "Caesar.h"
     
    Caesar::Caesar() : QWidget()
    {
        setWindowTitle( tr( "Caesar cipher" ) );
     
        QWidget *cryptWidget = new QWidget;
            m_substitution = new QSpinBox; // EN PLUS
            QFormLayout *substitutionCryptLayout = new QFormLayout; // EN PLUS
                substitutionCryptLayout->addWidget( m_substitution ); // EN PLUS
            QLabel *textToCrypt = new QLabel( tr( "Text to crypt :" ) );
            m_textToCrypt = new QTextEdit;
            m_crypt = new QPushButton( tr( "Crypt" ) );
            QLabel *textCrypted = new QLabel( tr( "Text crypted :" ) );
            m_textCrypted = new QTextEdit;
            QVBoxLayout *cryptLayout = new QVBoxLayout;
                cryptLayout->addItem( substitutionCryptLayout ); // EN PLUS
                cryptLayout->addWidget( textToCrypt );
                cryptLayout->addWidget( m_textToCrypt );
                cryptLayout->addWidget( m_crypt );
                cryptLayout->addWidget( textCrypted );
                cryptLayout->addWidget( m_textCrypted );
        cryptWidget->setLayout( cryptLayout );
     
        QTabWidget *tabWidget = new QTabWidget();
            tabWidget->addTab( cryptWidget, tr( "Crypt" ) );
            //tabWidget->addTab( uncryptWidget );
     
        QVBoxLayout *layout = new QVBoxLayout;
            layout->addWidget( tabWidget );
        setLayout( layout );
    }
     
    Caesar::~Caesar()
    {
        //
    }

    Pourquoi y a-t-il ce problème ?

    Merci d'avance

  2. #2
    Membre expert

    Avatar de IrmatDen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 727
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 727
    Points : 3 266
    Points
    3 266
    Par défaut
    Salut,

    Tu dois utiliser (directement ou indirectement) un pointeur non initialisé. Il faut que tu te serves de ton debugger pour le trouver.

Discussions similaires

  1. Réponses: 6
    Dernier message: 03/06/2014, 10h09
  2. Réponses: 0
    Dernier message: 22/11/2011, 11h38
  3. Réponses: 6
    Dernier message: 07/12/2007, 11h29
  4. Comment déployer une application ASP.NET avec Visual Studio .NET
    Par Marie-Hélène dans le forum Visual Studio
    Réponses: 0
    Dernier message: 01/12/2004, 12h00
  5. bouton ENTER = fermeture de l'application
    Par bigboomshakala dans le forum MFC
    Réponses: 2
    Dernier message: 10/05/2004, 11h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo