Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1506 connectés 

  FORUM HardWare.fr
  Programmation

  [VC++] Choix d'un répertoire (Boite de Dlg)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[VC++] Choix d'un répertoire (Boite de Dlg)

n°107068
leander
Posté le 02-03-2002 à 18:11:16  profilanswer
 

je suis en train de faire un boite de dialogue qui possède un bouton qui permet de choisir un repertoire qui sera utilisé dans la suite l'application.
 
Pour le moment, j'utilise le code suivant :
 
 bi.pidlRoot       = NULL;
 bi.pszDisplayName = szString;
 bi.lpszTitle   = "Choisir un repertoire";
 bi.ulFlags        = BIF_RETURNONLYFSDIRS;
 bi.lpfn           = NULL;
 bi.lParam         = 0;
 bi.iImage         = 0;
 
 pidl = SHBrowseForFolder(&bi);
 if (pidl != NULL)
 {
  IMalloc*   pm;
 
  SHGetPathFromIDList( pidl, szPathName );
  SHGetMalloc(&pm);
  if (pm)
  {
   pm->Free(pidl);
   pm->Release();
  }
  m_EditPathName.SetWindowText( szPathName );
 }  
 
Mais ça ne me satisfait pas encore. En effet j'aimerai pouvoir spécifier le répertoire par défaut qui est activé lorsque l'on ouvre la boite de dialogue pour choisir son rep. Parce que pour le moment, elle s'ouvre toujours sur le bureau.
Apparement on spéficier des repertoires classique "program files, mes documents, etc..." mais je n'arrive à trouver comment spécifier mon répertoire à moi par défaut.
 
Je sais qu'il faut remplir le champ bi.pidlRoot avec un ITEMIDLIST, mais j'ai pas encore compris comme ça marche.  
Es-ce que quelqu'un aurai un petit exemple ?

mood
Publicité
Posté le 02-03-2002 à 18:11:16  profilanswer
 

n°107069
leander
Posté le 02-03-2002 à 18:20:49  profilanswer
 

bon ben, je vais faire les questions réponses ;)
Je cherchais depuis 1 heure et je viens de trouver en 1s sur codeguru...
 
// On remplace ligne  
 bi.lpfn     = NULL;
//par
 bi.lpfn     = BrowseCallbackProc;
 
 
// On défini la callback suivante :
 
static int __stdcall BrowseCallbackProc(HWND hwnd,UINT uMsg,LPARAM lp, LPARAM pData)
{
 TCHAR szDir[MAX_PATH] = {NULL};
 if (uMsg == BFFM_INITIALIZED)
 {
  //  Browse dialog initialized - set it to our default folder
       wsprintf(szDir, "%s","c:\\mon rep" );
   
  // put initial directory here      
  SendMessage(hwnd,BFFM_SETSELECTION,TRUE,(LPARAM)szDir);
 }      
 return 0;
}
 
 
et voila, c'est gagné

n°107070
juju_le_ba​rbare
Vous fiez pas aux apparences !
Posté le 02-03-2002 à 18:22:43  profilanswer
 

leander a écrit a écrit :

bon ben, je vais faire les questions réponses ;)
Je cherchais depuis 1 heure et je viens de trouver en 1s sur codeguru...
 
// On remplace ligne  
 bi.lpfn     = NULL;
//par
 bi.lpfn     = BrowseCallbackProc;
 
 
// On défini la callback suivante :
 
static int __stdcall BrowseCallbackProc(HWND hwnd,UINT uMsg,LPARAM lp, LPARAM pData)
{
 TCHAR szDir[MAX_PATH] = {NULL};
 if (uMsg == BFFM_INITIALIZED)
 {
  //  Browse dialog initialized - set it to our default folder
       wsprintf(szDir, "%s","c:\\mon rep" );
   
  // put initial directory here      
  SendMessage(hwnd,BFFM_SETSELECTION,TRUE,(LPARAM)szDir);
 }      
 return 0;
}
 
 
et voila, c'est gagné  




 
codeguru ... quelle adresse ?


---------------
Visitez mon site : http://www.jujubarbare.linux-fan.com
n°107072
leander
Posté le 02-03-2002 à 18:24:54  profilanswer
 

www.codeguru.com .........................

n°107076
juju_le_ba​rbare
Vous fiez pas aux apparences !
Posté le 02-03-2002 à 18:35:30  profilanswer
 

leander a écrit a écrit :

www.codeguru.com .........................  




 
thx ;-)


---------------
Visitez mon site : http://www.jujubarbare.linux-fan.com

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [VC++] Choix d'un répertoire (Boite de Dlg)

 

Sujets relatifs
[C++] Effacer une boîte de dialogueC++; créer répertoire
Protection de repertoire sur free...HTML : Afficher l'arborescence disque a partir d'un repertoire
[Java] Obtenir le short name d'un répertoire[Delphi 6.0] Créer sa propre boite de dialogue ?
[java] creer un repertoire correct pour le fichier de propsOuvrir boite de dialogue de select. de fichier ??? en PHP ?? ou JS ???
[php] Choix d'un forum...[PHP]gestion de la sécurité d'un répertoire pour un compte utilisateur
Plus de sujets relatifs à : [VC++] Choix d'un répertoire (Boite de Dlg)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR