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 :

Explorateur de fichier et arborescence


Sujet :

Qt

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Apprenti
    Inscrit en
    Mars 2018
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Apprenti
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2018
    Messages : 7
    Points : 5
    Points
    5
    Par défaut Explorateur de fichier et arborescence
    Bonsoir,
    Je souhaiterais réaliser, avec Qt, un programme qui convertit des fichiers audio avant de les graver sur un CD.
    Pour sélectionner les fichiers je voudrais avoir un aperçu qui liste les dossiers en mode arborescence, et un autre aperçu qui montre le contenu du dossier sélectionné. Je voudrais aussi avoir une fenêtre dans laquelle on pourrait glisser plusieurs fichiers et récupérer par la suite les chemins de ces fichiers. L'interface ressemblerait un peu à celle de CDBurnerXP lors de la sélection de fichier avant de lancer la gravure du CD.
    Nom : Capture.PNG
Affichages : 1196
Taille : 96,7 Ko
    Le problème est que je ne sais absolument pas comment réaliser ceci. J'utilise Qt 5.11.

    Si vous pouvez m'aider, merci d'avance ^^

  2. #2
    Membre régulier
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Février 2011
    Messages
    266
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 266
    Points : 86
    Points
    86
    Par défaut
    Je te conseil de regarder du coté des QFileSystemModel associé avec un QListView pour ton arborescence et un QTableView pour ton aperçu.

    tu as de très bon tutoriel sur le net sur ces associations.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Apprenti
    Inscrit en
    Mars 2018
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Apprenti
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2018
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Merci de la réponse, je suis tombé sur la vidéo de VoidRealms mais je suis face à un problème.

    A un moment il utilise cette ligne :
    Code qt : Sélectionner tout - Visualiser dans une fenêtre à part
    ui->treeWidget->setModel(filemodel);
    Le problème est que setModel est un attribut privé de QTreeWidget et je ne vois pas quoi utiliser à la place.

    Voici le code complet:
    dialog.cpp
    Code qt : 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
     
    #include "dialog.h"
    #include "ui_dialog.h"
    #include <QDir>
    #include <QModelIndex>
     
    Dialog::Dialog(QWidget *parent) :
        QDialog(parent),
        ui(new Ui::Dialog),
        dirmodel(new QFileSystemModel(this)),
        filemodel(new QFileSystemModel(this))
    {
        ui->setupUi(this);
     
        QString sPath = "C:/";
        dirmodel = new QFileSystemModel(this);
        dirmodel->setFilter(QDir::NoDotAndDotDot | QDir::AllDirs);
        dirmodel->setRootPath(sPath);
     
        ui->treeView->setModel(dirmodel);
     
        filemodel = new QFileSystemModel(this);
        filemodel->setFilter(QDir::NoDotAndDotDot | QDir::Files);
        filemodel->setRootPath(sPath);
     
        ui->treeWidget->setModel(filemodel);
    }
     
    Dialog::~Dialog()
    {
        delete dirmodel;
        delete filemodel;
        delete ui;
    }
     
    void Dialog::on_treeView_clicked(const QModelIndex &index)
    {
        QString sPath = dirmodel->fileInfo(index).absoluteFilePath();
        ui->treeView->setRootIndex(filemodel->setRootPath(sPath));
    }

    dialog.h
    Code qt : 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
     
    #ifndef DIALOG_H
    #define DIALOG_H
     
    #include <QDialog>
    #include <QtCore>
    #include <QtGui>
    #include <QFileSystemModel>
     
    namespace Ui {
    class Dialog;
    }
     
    class Dialog : public QDialog
    {
        Q_OBJECT
     
    public:
        explicit Dialog(QWidget *parent = nullptr);
        ~Dialog();
     
    private slots:
        void on_treeView_clicked(const QModelIndex &index);
     
    private:
        Ui::Dialog *ui;
     
        QFileSystemModel *dirmodel;
        QFileSystemModel *filemodel;
    };
     
    #endif // DIALOG_H

  4. #4
    Membre régulier
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Février 2011
    Messages
    266
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 266
    Points : 86
    Points
    86
    Par défaut
    QTreeView::setModel est une méthode public :

    http://doc.qt.io/qt-5/qtreeview.html...blic-functions

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Apprenti
    Inscrit en
    Mars 2018
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Apprenti
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2018
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Nom : QTreeView--setModel.png
Affichages : 990
Taille : 72,1 Ko
    Il n'empêche que Qt est contre son utilisation. J'ai déjà vérifié la doc et c'est pour ça que ça me parait étrange...

Discussions similaires

  1. Explorateur de fichier - partage de fichier
    Par Jean-Matt dans le forum Général Conception Web
    Réponses: 5
    Dernier message: 07/11/2007, 23h23
  2. Réponses: 26
    Dernier message: 25/04/2007, 17h04
  3. [VS2005] Contrôles explorateur de fichier
    Par waici dans le forum Windows Forms
    Réponses: 5
    Dernier message: 11/01/2006, 21h23
  4. Explorateur de fichier avec limitation
    Par Shogun dans le forum Composants VCL
    Réponses: 12
    Dernier message: 30/05/2005, 17h45
  5. [C#] [Winforms] Explorateur de fichier et icônes windows
    Par Cl@rk dans le forum Windows Forms
    Réponses: 5
    Dernier message: 03/12/2004, 09h11

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