Salut a tous,
je cherche un controle activeX me permettant de parcourir mon disque dur, comme un bouton parcourir pr aller chercher un fichier ...
merci
Version imprimable
Salut a tous,
je cherche un controle activeX me permettant de parcourir mon disque dur, comme un bouton parcourir pr aller chercher un fichier ...
merci
SAlut
Moi j'utilise une boite de dialog parcourir dans mon projet MFC. Je te met le code voit ce que tu peut faire avec. Dans mon_dossier tu aura la valeur du dossier selectionné lorsque l'utilisateur click sur le bouton OK.
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 #include <Shlobj.h> ... void CNomProjetDlg::OnParcourir() { // TODO: Add your control notification handler code here char nom_dossier[MAX_TAILLE]; LPITEMIDLIST item; BROWSEINFO bi; memset(&bi,0,sizeof(BROWSEINFO)); item=SHBrowseForFolder(&bi); if(item!=NULL) SHGetPathFromIDList(item,nom_dossier); CWnd::SetDlgItemText(IDC_EDIT_DESTINATION,nom_dossier); // cette derniere ligne permet juste d'afficher le resultat dans un control // CEdit }
euh .... :tagcode:
qu'est ce que tu entends par parcourir ? est ce une boite de dialogue pour ouvrir un fichier ? est ce le parcours recursif jusqu'a trouver un fichier automatiquement ?
Juste un bouton parcourir tout simple qui donne accés a tes disques locaux
arf triple poste
tu utilises les mfc ou pas ?
desole pr le triple post :)
oui j'utilise des mfc
Donc si j'ai bien compris moi je ferais ca :
Code:
1
2
3 CFileDialog fdlg(TRUE); fdlg.DoModal();
Merci c'est exactement ce que je voulais !
Par contre comment je fait lorsque j'ai finit de choisir mon fichier, que le chemin s'affiche sur mon IDC_EDIT ??
CFileDialog dans la faq http://c.developpez.com/faq/vc/?page...DialogHowToUse
SetWindowText sur le Cedit pour afficher la sélection
Merci
J'ai essayé ta fontction comme ceci :
m_fichier = setwindows.....();
Mais cela ne marche pas ... Et je n'ai pas trouvé la solution sur ton lien
Code:m_edit.SetWindowText(FileOpenDialog.GetPathName());
Merci mais il y a quelques erreurs a la compilation sur la ligne suivante :
les erreurs sont les suivantes :Code:m_fichier.SetWindowText(FileOpenDialog.GetPathName());
SetWindowText : is not a member of CString
FileOpenDialog : undeclared identifier
et
GetPathName : must have class/struct/union type
g du mal a comprendre
Il faut que tu associes ton controle à un CEdit, et non à une chaineCitation:
Envoyé par jonny
qu'est-ce que FileOpenDialog ?Citation:
Envoyé par jonny
on peut avoir le code de la ligne avec getpathname ?
pardon voici le code :
J'ai recopié betement ce qu'on ma proposé dans le forum je vous cache pas que je comprend plus grand chose.Code:
1
2
3
4 CFileDialog fdlg(TRUE); fdlg.DoModal(); m_fichier.SetWindowText(FileOpenDialog.GetPathName());
là ... c'est dur
et essaie voir de mettre le bon nom de variable ?
Code:
1
2
3
4 CFileDialog fdlg(TRUE); fdlg.DoModal(); m_fichier.SetWindowText(fdlg.GetPathName());
Il y a du mieux !
1 erreur : SetWindowText is not a member of CString
Il y a une chose etrange c'est que lorsque je met le point apres m_fichier, en temps normal il me propose une multitude de fonction tandis que là il me propose rien ...
j'ai déjà répondu à cette question :
Citation:
Envoyé par nico-pyright(c)
ok je vois c bon j'ai corrigé, a nouveau 3 erreurs :
GetLenght is not a member of Cedit .... a 2 reprise cette erreur
et l'autre erreur :
fopen cannot convert parametre 1 from class Cedit from const char *
....
Mais le point apres mon Control Cedit ne me donne toujours pas de liste de fonction
c'est pas comme ca qu'on récupère la longueur d'un CEdit
Code:
1
2 int longueur = m_monEdit.GetWindowTextLength();
je pense que l'on s'eloigne du sujet, je rapelle que je veux juste copier le chemin d'un fichier choisi sur une fenetre CFileDialog sur un edit.
Maintenant si il faut aller jusqu'a prendre la taille du control edit autant pour moi mais je ne comprend pas.
HELP !