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 :

Filtre avec QFileSystemModel et QListView


Sujet :

Qt

  1. #1
    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 Filtre avec QFileSystemModel et QListView
    Bonjour,

    je suis actuellement entrain de coder ma propre fenêtre de sélection de fichier a la manière d'un QFileDialog.
    Mon problème provient de la mise en place des filtres.
    Je vous explique. J'ai réussi a mettre en place un filtre pour par exemple n'afficher que les fichier JPG, cependant je souhaiterais que mon filtre permettent également de voir les dossier et pour ça je n'ai pas trouvé quel filtre mettre.

    Pour information pour la suite je développe sous QtCreator avec Qt5.3+msvc 2013

    donc voici comment est configuré de base mon QFileSystemModel:

    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
    fileModel = new QFileSystemModel(this);
     
    #if _WIN32
         QString mPath = "C:/";
    #elif __linux__
        QString mPath = "/";
    #endif
     
       // Set filter
       fileModel->setFilter(QDir::NoDotAndDotDot |
                            QDir::Files | QDir::Dirs);
     
       // QFileSystemModel requires root path
       fileModel->setRootPath(mPath);
     
       // Attach the file model to the view
        ui->listView_Fichier->setModel(fileModel);


    et voici comment je met en place mes filtres :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    void DialogFile::setNamesFilter(QStringList filter)
    {
        fileModel->setNameFilters(filter);
        fileModel->setNameFilterDisables(false);
    }

    et donc quand j'appelle ma fenêtre je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     DialogFile dial;
        dial.setCaption("Fichier lwo a ouvrir");
        dial.setNamesFilter(QStringList() << "*.jpg << *.JPG");
        dial.exec();
    Or quand je me déplace dans mon arborescence ma qlistview ne m'affiche que les fichier JPG et pas les dossiers sur lesquelles je voudrais pouvoir double cliquer pour changer de répertoire.


    Comment faire en sorte que mon filtre laisse passer les répertoires également?

    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
    Bon j'ai trouvé moi même ma réponse, en fouillant bien.

    Je mets la solution dès fois que ça puisse aider quelqu'un.

    Il s'agit de la configuration de mon model qui n'était pas correct en effet j'ai remplacé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
       fileModel->setFilter(QDir::NoDotAndDotDot |
                            QDir::Files | QDir::Dirs);
    Par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      fileModel->setFilter(QDir::NoDotAndDotDot |
                            QDir::Files | QDir::AllDirs);

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VBA-E] Recuperer le nombre de lignes filtrées avec SubTotal
    Par AliochaBada dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 02/09/2006, 23h53
  2. [Débutant] Résultat filtré avec CONTAINS ?
    Par mimicracra dans le forum Oracle
    Réponses: 17
    Dernier message: 17/07/2006, 15h11
  3. Filtre avec zone de liste déroulante
    Par petitloup71 dans le forum Access
    Réponses: 10
    Dernier message: 08/07/2006, 12h21
  4. Filtre Avec Password
    Par @rkane dans le forum Sécurité
    Réponses: 7
    Dernier message: 15/06/2006, 22h31
  5. Recherche et filtre avec un dynaset
    Par mat75019 dans le forum Access
    Réponses: 10
    Dernier message: 10/04/2006, 19h53

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