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 :

Garder en mémoire les derniers fichiers saisis


Sujet :

Qt

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 145
    Points : 9
    Points
    9
    Par défaut Garder en mémoire les derniers fichiers saisis
    Bonjour,

    Pour mon projet, l'utilisateur doit saisir 7 fichiers avec un bouton parcourir, ce qui est contraignent à faire à chaque lancement de l'application.

    C'est pour cela que j'aimerai stocker les 7 chemins des fichiers dans un fichier texte (ce qui est déjà fait) et les garder en mémoire afin de les utiliser directement lors du prochain démarrage de l'application (ce que je veux faire).

    Voici mon code :

    Fichiers.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
    30
    31
    32
    33
    34
    class Fichiers : public QDialog
    {
        Q_OBJECT
     
        private:
            Ui::Fichiers uiFic;
            QString fichierPosX;
            QString fichierPosY;
            QString fichierPosZ;
            QString fichierPosTheta1;
            QString fichierPosTheta2;
            QString fichierAutresParametres;
            QString fichierBuses;
     
        public:
            Fichiers(QWidget *parent = 0);
            QString getFichierPosX();
            QString getFichierPosY();
            QString getFichierPosZ();
            QString getFichierPosTheta1();
            QString getFichierPosTheta2();
            QString getFichierAutresParametres();
            QString getFichierBuses();
     
        private slots:
            void ouvrirFichierPosX();
            void ouvrirFichierPosY();
            void ouvrirFichierPosZ();
            void ouvrirFichierPosTheta1();
            void ouvrirFichierPosTheta2();
            void ouvrirFichierAutresParametres();
            void ouvrirFichierBuses();
     
    };
    Fichiers.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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    Fichiers::Fichiers(QWidget *parent) : QDialog(parent)
    {
        setFixedSize(720, 450);
        uiFic.setupUi(this);
        connect(uiFic.BoutonValiderFichiers, SIGNAL(clicked()), this, SLOT(close()));
        connect(uiFic.BoutonParcourirPosX, SIGNAL(clicked()), this, SLOT(ouvrirFichierPosX()));
        connect(uiFic.BoutonParcourirPosY, SIGNAL(clicked()), this, SLOT(ouvrirFichierPosY()));
        connect(uiFic.BoutonParcourirPosZ, SIGNAL(clicked()), this, SLOT(ouvrirFichierPosZ()));
        connect(uiFic.BoutonParcourirPosTheta1, SIGNAL(clicked()), this, SLOT(ouvrirFichierPosTheta1()));
        connect(uiFic.BoutonParcourirPosTheta2, SIGNAL(clicked()), this, SLOT(ouvrirFichierPosTheta2()));
        connect(uiFic.BoutonParcourirAutresParametres, SIGNAL(clicked()), this, SLOT(ouvrirFichierAutresParametres()));
        connect(uiFic.BoutonParcourirBuses, SIGNAL(clicked()), this, SLOT(ouvrirFichierBuses()));
    }
    
    QString Fichiers::getFichierPosX()
    {
        return fichierPosX;
    }
    
    QString Fichiers::getFichierPosY()
    {
        return fichierPosY;
    }
    
    QString Fichiers::getFichierPosZ()
    {
        return fichierPosZ;
    }
    
    QString Fichiers::getFichierPosTheta1()
    {
        return fichierPosTheta1;
    }
    
    QString Fichiers::getFichierPosTheta2()
    {
        return fichierPosTheta2;
    }
    
    QString Fichiers::getFichierAutresParametres()
    {
        return fichierAutresParametres;
    }
    
    QString Fichiers::getFichierBuses()
    {
        return fichierBuses;
    }
    
    void Fichiers::ouvrirFichierPosX()
    {
        fichierPosX = QFileDialog::getOpenFileName(this, "Ouvrir le fichier de défaut pour la position x", "*.csv");
        QFile fileX("fichierX.txt"); // on créé l'objet-fichier
    
        if (!fileX.open(QIODevice::WriteOnly | QIODevice::Text)) // on test l'ouverture du fichier en écriture et en texte
            return; // si on ne peut pas ouvrir (fichier en lecture seule, par exemple), on quitte la fonction
    
        QTextStream out(&fileX); // on créé un objet de type QTextStream pour simplifier l'utilisation du fichier
        out <<fichierPosX;
        uiFic.cheminFichierPosX->setText(fichierPosX);
    }
    
    idem pour les 6 autres fichiers...

    Maintenant, j'aimerai utiliser les 7 chemins des fichiers contenus dans les fichiers txt.
    J'ai essayé de les mettre dans le constructeur mais cela n'a pas marché.

    Merci de votre aide.

  2. #2
    Membre habitué
    Avatar de bobti89
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    86
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 86
    Points : 150
    Points
    150
    Par défaut
    Je te conseille de regarder les QSettings. Il y a aussi des exemples dans la FAQ.
    bob ou bob, vous ne voyez pas la différence. Pourtant il y en a une fondamentale, l'un est écrit à l'endroit, l'autre à l'envers.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 145
    Points : 9
    Points
    9
    Par défaut
    Je ne comprends pas grand chose sur le lien que tu m'as envoyé.
    Si quelqu'un a un exemple, çà serait super.

    Merci pour le lien tout de même, je vais voir si j'peux pas gratter quelque chose.

Discussions similaires

  1. Réponses: 1
    Dernier message: 19/10/2014, 19h55
  2. Garder en mémoire les cases cochées checkbox
    Par almoha dans le forum Langage
    Réponses: 2
    Dernier message: 22/01/2011, 22h09
  3. Garder en mémoire les éléments ajoutés.
    Par doudine dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 13/05/2007, 18h18
  4. Garder en mémoire les valeurs entrées par l'utilisateur
    Par dessinateurttuyen dans le forum Langage
    Réponses: 11
    Dernier message: 17/08/2006, 09h15
  5. Garder en mémoire les identifiants FTP
    Par .:dev:. dans le forum Langage
    Réponses: 6
    Dernier message: 12/08/2006, 14h41

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