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]CFileDialog je veux que l'extension se rajoute automati


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]CFileDialog je veux que l'extension se rajoute automati
    Bonjour à tous,
    sur une boite d'enregistrement CFileDialog avec 2 filtres adéquat (*.xls et *.txt) qui s'affichent correctement sans problèemes, je voudrais en fonction de ma selection que l'extension se rajoute automatiquement au nom de fichier entré.
    j'ai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    CFileDialog EnregDlg(FALSE,NULL,NULL,OFN_PATHMUSTEXIST
            |OFN_FILEMUSTEXIST|OFN_EXPLORER,
             "Fichier compatible Excel (*.xls)|*.xls|Fichier texte (*.txt)|*.txt||",NULL);

  2. #2
    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,
    il faut faire une classe derivée de CFileDialog (avec classwizard).
    redefinir la fonction virtuelle :
    virtual void OnTypeChange()
    Après il faut trouver la combobox de selection,
    Dans mon exemple j'ai fais un premier essai avec un trace pour repérer l'id de la combobox de sélection du filtre, c’est le code entre commentaire.
    Après j'accède directement a la valeur de la zone par un GetWindowText.

    Dans ton cas il ne reste qu'a mémoriser la valeur en tant que donnée membre de la classe .
    Et d'appliquer le changement en sortie de boite de dialogue.
    en redéfinissant DoModal par exemple a toi de voir..

    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
     
    void CMyFileDialog::OnTypeChange()
    {
    	CString str;
    	CWnd *pWnd=this;
     
    	/*char sz[256]; 
    	bool bFirst=true;
    	while(pWnd=pWnd->GetWindow(bFirst?GW_HWNDFIRST:GW_HWNDNEXT))
    	{
    		bFirst=false;
    		if(GetClassName(pWnd->GetSafeHwnd(),sz,sizeof(sz)))
    		{
    			if(CString(sz)=="ComboBox")
    			{
    				pWnd->GetWindowText(str);
    				TRACE("\ntype:%s- %u",(const char *)str,pWnd->GetDlgCtrlID());
    			}
    		}		  
    	}*/
     
    	pWnd=GetParent();
    	pWnd->GetDlgItem(1136)->GetWindowText(str);
    	TRACE("\n%s",(const char *)str);
     
    }

  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
    Merci,
    il me reste plus qu'a faire des essais...
    (la solutio me semble intérressante ! )

Discussions similaires

  1. [MFC] CFileDialog et Repertoire
    Par annedjomo dans le forum MFC
    Réponses: 11
    Dernier message: 24/11/2005, 16h54
  2. [MFC] Variable global et DLL d'extension
    Par Capnader dans le forum MFC
    Réponses: 2
    Dernier message: 31/03/2005, 11h33
  3. [CR10] je veux que le blok reste ensemble
    Par speed034 dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 25/11/2004, 13h47
  4. Réponses: 3
    Dernier message: 24/08/2004, 11h49

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