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

MFC Discussion :

[MFC]affichage mode detail d'une CFileDialog


Sujet :

MFC

  1. #1
    Membre régulier

    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2002
    Messages
    216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2002
    Messages : 216
    Points : 120
    Points
    120
    Par défaut [MFC]affichage mode detail d'une CFileDialog
    Salut,
    je voudrais à la création, disont plutot à l'ouverture d'une CFileDialog avoir l'affichage par defaut du mode détail pour la liste de fichiers.
    ????
    Merci

  2. #2
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2004
    Messages
    318
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2004
    Messages : 318
    Points : 362
    Points
    362
    Par défaut
    C'est quoi un mode détail ?

  3. #3
    Membre régulier

    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2002
    Messages
    216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2002
    Messages : 216
    Points : 120
    Points
    120
    Par défaut
    Ben, quand tu fait fichiers ouvrir si tu clique sur l'icone de la boite des modes, tu as le choix entre listes, détails petites icones... pour changer le format de la liste des fichiers

  4. #4
    Membre régulier

    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2002
    Messages
    216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2002
    Messages : 216
    Points : 120
    Points
    120
    Par défaut
    merci quand même à tout le monde !
    j'ai trouvé la solution sur codeguru :
    http://www.codeguru.com/Cpp/W-D/disl...cle.php/c5031/

    création d'une classe dérivé de CFileDialog et surcharge de OnInitDialog:
    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
     
    BOOL MyFileOpenDialog::OnInitDialog() 
    {
        CFileDialog::OnInitDialog();
     
        // heres the code to enable detail view
     
        CWnd *parent = GetParent();
        if ( parent != NULL ) {
           parent->PostMessage(WM_COMMAND, 40964, NULL);
        }
     
        // thats it !!
     
        return TRUE;
    }
    C'est OK et ça fonctionne !!
    A+

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 62
    Points : 66
    Points
    66
    Par défaut
    salut,

    Je n'arrive pas a faire marcher sa
    quelqu'un peut-il me donner quelques expliquations ?

    error C2352: 'CDialog::OnInitDialog' : illegal call of non-static member function
    .

    Arnaud

  6. #6
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    salut,
    a mon avis ta classe de base n'st pas derivée d'une CDialog .
    ou alors ton appel n'est pas dans la fonction OnInitDialog derivée.


  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 62
    Points : 66
    Points
    66
    Par défaut
    oui, elle est derivé d'une CFormView.
    J'ai essayer sa mais sa ne marche pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    	static char BASED_CODE szFilter[] = "Fichiers Cla (*.cla)|*.cla|All Files (*.*)|*.*||"; 
    	CFileDialog fDlg(TRUE,"cla","*.cla",OFN_LONGNAMES | OFN_OVERWRITEPROMPT,szFilter);
    	fDlg.PostMessage(WM_COMMAND, 40964, NULL);
    Arnaud

  8. #8
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    salut,
    Tu peux nous expliquer ce que tu cherches à faire ?
    Peut être dans un autre post celui ci n'a apparemment rien a voir avec le sujet non ?


  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 62
    Points : 66
    Points
    66
    Par défaut
    Oui bien sur,
    Je cherche a ouvrir une boite de dialog d'ouverture de fichier (par la méthode décrite ci dessus). Mais par defaut l'affichage est en mode list, et je voudrai qu'il doit en mode "detail".
    Je n'ai rien trouvé d'autre sur le forum ou sur le net.

  10. #10
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    ok j'ai compris et du coup le lien avec le post initial lol,
    il faut que tu fasses une classe derivée de CFileDialog et que tu interceptes la fonction OnInitDialog pour faire le PostMessage dedans.
    exemple de classe dérivée:
    http://c.developpez.com/faq/vc/?page...etCurentFolder


  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 62
    Points : 66
    Points
    66
    Par défaut
    OK, je pense avoir compris.
    J'esserai sa des ce soir

    Merci

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 62
    Points : 66
    Points
    66
    Par défaut
    bon, j'ai fait sa dans un .h

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    class CMyFileDialog : public CFileDialog
    {
    protected:
    	virtual BOOL OnInitDialog();
    };
    et sa dans le .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
    BOOL CMyFileDialog::OnInitDialog()
    {
        CFileDialog::OnInitDialog();
     
        // heres the code to enable detail view
     
        CWnd *parent = GetParent();
        if ( parent != NULL ) {
           parent->PostMessage(WM_COMMAND, 40964, NULL);
        }
     
        // thats it !!
     
        return TRUE;
    }
    sa compile, mais après, comment dois-je faire pour appeler ma boite de dialog ??? car j'ai des problèmes de constructeur après

    avant je faisai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	CFileDialog fDlg(TRUE,"cla","*.cla",OFN_LONGNAMES | OFN_OVERWRITEPROMPT,szFilter);
    	if (fDlg.DoModal() == 1)

  13. #13
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    ah tu as pas bien recopié mon exemple ;
    tu remarqueras que dans le lien cité le constructeur est repris ...

  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 62
    Points : 66
    Points
    66
    Par défaut
    Oups !!!

    SUPER FARSCAPE
    MERCI BEAUCOUP

    sa marche !!!

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

Discussions similaires

  1. Réponses: 12
    Dernier message: 01/06/2006, 15h32
  2. Réponses: 4
    Dernier message: 25/04/2006, 16h14
  3. [MFC] affichage iteratif d'une CDialog
    Par jlassira dans le forum MFC
    Réponses: 9
    Dernier message: 15/02/2006, 15h27
  4. Réponses: 1
    Dernier message: 07/01/2006, 21h10
  5. [mfc] affichage dans une boite de dialog
    Par chronos dans le forum MFC
    Réponses: 3
    Dernier message: 14/06/2004, 15h12

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