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 :

Qt QListWidget erreure de segmentation Oo


Sujet :

Qt

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 39
    Points : 29
    Points
    29
    Par défaut Qt QListWidget erreure de segmentation Oo
    Bonsoir ,
    Je souhaite faire une application qui reçois un certains nombre de fichiers en entrées et qui apres traitement écrit un fichier de résultat.
    J'ai donc ecris un objet qui me crée une fenetre avec une liste que l'on remplie via la fonction getopenfilenames();
    Mais voila lorsque je compile , j'ai aucune erreure , mais lorsque j'execute le programme et que j'ouvre ma fenetre de selection de fichiers j'ai une erreure :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "erreure de segmentation"
    qui provient de la ligne suivante a l'interieur de la methode void FenPrincipale::ouvrirfichier():
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        listWidget->insertItems(0,fichiers);
    Quelqu'un peut m'expliquer ?
    Une petite aide serait bien venue , je sèche la ....

    voici le code de mon objet FenPrincipale :

    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    #include "FenPrincipale.h"
     
    FenPrincipale::FenPrincipale() : QWidget()
    {
     
        QHBoxLayout *layoutGroupe1 = new QHBoxLayout;
        QGroupBox *groupBox1 = new QGroupBox("Listes des fichiers", this);
        QFormLayout *layoutForm1 = new QFormLayout;
        QListWidget *listWidget = new QListWidget(this);
        layoutForm1->addRow(listWidget);
        groupBox1->setLayout(layoutForm1);
        layoutGroupe1->addWidget(groupBox1);
     
     
        QHBoxLayout *layoutGroupe2 = new QHBoxLayout;
        progressBar = new QProgressBar(this);
        progressBar->setObjectName(QString::fromUtf8("progressBar"));
        progressBar->setGeometry(QRect(110, 190, 118, 23));
        progressBar->setValue(50);
        layoutGroupe2->addWidget(progressBar);
     
     
        QHBoxLayout *layoutGroupe3 = new QHBoxLayout;
        QPushButton *bouton1 = new QPushButton("Selectionner");
        QPushButton *bouton2 = new QPushButton("Quitter");
        layoutGroupe3->addWidget(bouton1);
        layoutGroupe3->addWidget(bouton2);
     
     
     
        QGridLayout *layoutPrincipal = new QGridLayout;
        layoutPrincipal->addLayout(layoutGroupe1, 0, 0);
        layoutPrincipal->addLayout(layoutGroupe2, 1, 0);
        layoutPrincipal->addLayout(layoutGroupe3, 2, 0, Qt::AlignRight);
        this->setLayout(layoutPrincipal);
     
        QObject::connect(bouton1, SIGNAL(clicked()), this, SLOT(ouvrirfichier()));
        QObject::connect(bouton2, SIGNAL(clicked()), qApp, SLOT(quit()));
     
    }
     
    void FenPrincipale::ouvrirfichier()
    {
        QStringList fichiers = QFileDialog::getOpenFileNames(this, "Ouvrir un fichier", QString(), "Tous fichiers texte (*.log *.txt *.cpp *.h)");
        listWidget->insertItems(0,fichiers);
    }
    et son header :

    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
    #ifndef FENPRINCIPALE_H_INCLUDED
    #define FENPRINCIPALE_H_INCLUDED
     
    #include <QtGui>
     
    class FenPrincipale : public QWidget
    {
        Q_OBJECT
     
        public:
        FenPrincipale();
     
        public slots:
        void ouvrirfichier();
     
        private:
        QProgressBar *progressBar;
        QListWidget *listWidget;
    };
    #endif // FENPRINCIPALE_H_INCLUDED

  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,

    La variable FenPrincipale::listWidget n'est jamais initialisée. Je te laisse le soin de relire le constructeur pour en comprendre la raison.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 39
    Points : 29
    Points
    29
    Par défaut
    Merci bien , effectivement , j'ai mal initialisé ma QlistWidget .
    Ca marche maintenant . ^^

  4. #4
    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
    N'oublie pas le

Discussions similaires

  1. Erreurs de segmentation !
    Par anti-conformiste dans le forum Applications et environnements graphiques
    Réponses: 16
    Dernier message: 18/10/2005, 11h11
  2. Erreur de segmentation
    Par Trunks dans le forum C
    Réponses: 3
    Dernier message: 06/10/2005, 18h28
  3. Erreur de segmentation (Inconnue)
    Par Dark-Meteor dans le forum C
    Réponses: 5
    Dernier message: 08/09/2005, 13h42
  4. [Dev-C++] Erreur de segmentation...
    Par sas dans le forum Dev-C++
    Réponses: 11
    Dernier message: 26/03/2005, 14h25
  5. erreur de segmentation
    Par transistor49 dans le forum C++
    Réponses: 10
    Dernier message: 15/03/2005, 11h18

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