Comment sélectionner un dossier uniquement à l'aide de contrôle common dialog
À l'aide de VB6
Code.
CommonDialog1.DialogTitle = "Open File"
CommonDialog1.Filter = "*.*"
CommonDialog1.FilterIndex = 1
CommonDialog1.Flags = cdlOFNAllowMultiselect + cdlOFNExplorer
CommonDialog1.Flags = cdlOFNFileMustExist + cdlOFNHideReadOnly
CommonDialog1.CancelError = True
On Error Resume Next
CommonDialog1.ShowOpen
If Err Then
'MsgBox "Select Folder"
Exit Sub
End If
Du code ci-dessus, je suis de la sélection d'un fichier, Mais je ne veux pas de sélectionner un fichier, je veux seulement sélectionner le dossier. Comment modifier mon code.
Besoin de code vb6 Aider?
OriginalL'auteur Gopal | 2009-10-18
Vous devez vous connecter pour publier un commentaire.
Il a été un moment depuis que j'ai eu à faire d'visual basic travail, mais je pense qu'au lieu de l'aide de la boîte de dialogue commune pour obtenir le nom d'un fichier pour l'ouvrir, vous devez utiliser le SHBrowseForFolder d'une fonction qui est déjà une partie de l'API de Windows. Voici un lien vers une page qui décrit son utilisation.
Mise à jour (2017): à la Condition que le lien est brisé, mais une version sauvegardée peut être consulté sur archive.org
Ne pas le faire. La réponse devrait être autonomes et ne dépendent pas un liens externes car ils peuvent se briser sur la ans. Un lien peut être donnée comme une référence pour enrichir votre réponse, mais ne devrait pas constituer le corps principal.
Tous ceux qui veulent voir les ininterrompue lien pouvez cliquer ici: web.archive.org/web/20081204022345/http://www.base64.co.uk:80/...
Cette version semble être de nice: https://github.com/badcodes/vb6/tree/master/FolderBrowser
OriginalL'auteur Twotymz
Pour sélectionner un dossier, vous pouvez utiliser le Shell et l'Automatisation de Volet.
Vous devez ajouter une référence à
shell32.dll
à votre projet. Utiliser le Projet/Références... menu puis browse pourshell32.dll
.Ou vous pouvez utiliser l'API Windows comme Twotymz suggère.
Je présume que vous pouvez récupérer quelque chose d'autre sur qui
shlFolder
objet en plus deTitle
qui est plus adapté.ne pas le paraître. .ParentFolder est le prochain nom de dossier, mais encore une fois, juste une simple et unique nom, pas un chemin d'accès de toute nature. Encore résolu mon besoin pour le moment, mais je m'attendais à un plus robuste chemin.
OriginalL'auteur Robert Harvey
C'est un vieux thread, mais peut-être que quelqu'un sera aidée par le présent.
Ce code fonctionne en VB6 pour moi:
~#~
et aussi cela va aller dans le dossier en sélectionnant le bouton Ouvrir et sans la saisie d'un nom, il ne fonctionnera pas ;).'CurDir' est point ici. Il fonctionne
OriginalL'auteur user3633114
J'ai bien plus général VBA question de toute façon, l'ouverture de dialogue sélectionner un dossier dans VBA pour Office >=2k3.
Je ne pouvais pas croire que c'est tellement dur, que j'ai besoin des mêmes fonctionnalités. Peu googler fait.
Ici est simple et agréable, solution prendre un coup d'oeil
Application.FileDialog
en VB6 ;).OriginalL'auteur Gadolin