lolpop
Messages postés211Date d'inscriptionmercredi 4 août 2004StatutMembreDernière intervention18 octobre 2010
-
8 juil. 2006 à 00:23
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
8 juil. 2006 à 16:23
Bonjour tout le monde ca faisait longtemp :)
Alors par ou commencer? J'ai créé un petit form avec un bouton pour parcourir les fichiers, j'ai activé le composant Common Dialog controls 6.0 et j'ai placé CommonDialog1 dans mon form.
j'ai fait un petit code pour affiché la fenetre qui marche qui est :
<hr />
Private Sub Command1_Click()
CommonDialog1.ShowOpen
Chemin = CommonDialog1.FileName
nom = CommonDialog1.FileTitle
If Chemin = "" Then MsgBox "vous n'avez rien sélectionné": Exit Sub
MsgBox Chemin
End Sub
<hr />
déjas je ne sais pas si mon code est super valable, mais il foncionne(a moitié ^^)
Quand je dit a moitié, je m'explique:
lorsque je clique pour la premier fois et que je clique sur annuler, j'ai bien le message "vous n'avez rien sélectionné".
Maintenant je clique et je choisi un fichier au hasard, j'ai bien le message avec le chemin du fichier qui s'affiche.
Et maintenant si je reclique sur le bouton et que je met annulé, j'ai encore le message avec le chemin du fichier précédent.
il doit y avoir un truc a vider mais je ne sais pas ce que sais, si quelqu'un a une idée, je l'en remercie d'avance.
un autre truc, ceci c'est fait pour sélectionner les fichiers, mais pour sélectionner un dossier il faut changer quoi?
us_30
Messages postés2065Date d'inscriptionlundi 11 avril 2005StatutMembreDernière intervention14 mars 201610 8 juil. 2006 à 10:13
Salut,
Une autre possibilité plus simple c'est de remettre CommonDialog1.FileName à zéro, avant de lancer CommonDialog.
Ce qui donne :
CommonDialog1.Filename = ""
CommonDialog1.ShowOpen
Chemin = CommonDialog1.Filenam
If Chemin = "" Then MsgBox "vous n'avez rien sélectionné": Exit Sub
MsgBox Chemin
Cela à l'avantage (ou l'inconvénient c'est selon ce qu'on veut faire) de remettre la selection vide, car sinon en retrouve le nom du fichier précédemment sélectionné.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 8 juil. 2006 à 16:23
Pour ce qui est la sélection de répertoire, il n'existe pas de composant tout fait comme le CommonDialog.
Il suffit d'utiliser quelques APIs du système.
Cherche le mot "Folder" dans la recherche parmi les codes, tu y trouveras des "folder browser"
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 8 juil. 2006 à 00:47
Salut
Si tu cliques sur Annuler, le composant garde en effet le nom du fichier dernièrement.
Par contre, le composant peut génèrer une information en cas d'utilisation du bouton Annuler :
Il suffit de passer sa propriété .CancelError à True
De cette manière, si on clique sur Annuler, le programme passera en Erreur.
Il suffit donc de génrer l'erreur :
Private Sub Command1_Click()
On Error Goto Erreur
CommonDialog1.ShowOpen
MsgBox "Fichier : " & CommonDialog1FileName
Exit Sub
Erreur: '--------------------------------------
If Err.Number = 32755 Then
' RàS : Touche Annuler
Else
MsgBox "Erreur " & CStr(Err.Number) & " - " & Err.Description
End If
End Sub
Par contre, tant qu'aucun fichier n'a été sélectionné auparavant, le 1er Annuler ne déclenchera pas l'erreur mais indiquera un .FileName vide.
Donc, garde ton test si .FileName = ""
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Champion du monde de boule de cristal - 2005 Le savoir est la seule matière qui s'accro