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.