On utilise 'ShowOpen' pour sélectionner un fichier.
Je n'ai pas trouvé de méthode pour sélectionner un dossier avec le même
contrôle.
La seule possibilité que je connaisse est l'utilisation combinée de
'DriveListBox' et 'DirListBox'.
Savez-vous s'il existe des moyens plus élégants en dehors de TreeView qui
n'est pas simple à gérer ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Pascal B.
Salut,
Je n'ai pas le code sous la main, mais tu auras vite une solution en faisant une recherche sur la fonction API: "SHBrowseForFolder" qui affiche une boite de dialogue permettant à l'utilisateur de selectionner un répertoire (dossier). (En pricipe cette fonction est acompagnée de "SHGetPathFromIDList")
Cordialement, Pascal B.
Regarde du côté de la fonction "Aski" wrote in message news:%23% | Bonjour, | | On utilise 'ShowOpen' pour sélectionner un fichier. | Je n'ai pas trouvé de méthode pour sélectionner un dossier avec le même | contrôle. | La seule possibilité que je connaisse est l'utilisation combinée de | 'DriveListBox' et 'DirListBox'. | Savez-vous s'il existe des moyens plus élégants en dehors de TreeView qui | n'est pas simple à gérer ? | | Merci | | Aski | |
Salut,
Je n'ai pas le code sous la main, mais tu auras vite une solution en faisant une recherche sur la fonction API:
"SHBrowseForFolder" qui affiche une boite de dialogue permettant à l'utilisateur de selectionner un répertoire (dossier).
(En pricipe cette fonction est acompagnée de "SHGetPathFromIDList")
Cordialement,
Pascal B.
Regarde du côté de la fonction
"Aski" <aski@free.com> wrote in message news:%23%23kfwVsKFHA.1176@TK2MSFTNGP12.phx.gbl...
| Bonjour,
|
| On utilise 'ShowOpen' pour sélectionner un fichier.
| Je n'ai pas trouvé de méthode pour sélectionner un dossier avec le même
| contrôle.
| La seule possibilité que je connaisse est l'utilisation combinée de
| 'DriveListBox' et 'DirListBox'.
| Savez-vous s'il existe des moyens plus élégants en dehors de TreeView qui
| n'est pas simple à gérer ?
|
| Merci
|
| Aski
|
|
Je n'ai pas le code sous la main, mais tu auras vite une solution en faisant une recherche sur la fonction API: "SHBrowseForFolder" qui affiche une boite de dialogue permettant à l'utilisateur de selectionner un répertoire (dossier). (En pricipe cette fonction est acompagnée de "SHGetPathFromIDList")
Cordialement, Pascal B.
Regarde du côté de la fonction "Aski" wrote in message news:%23% | Bonjour, | | On utilise 'ShowOpen' pour sélectionner un fichier. | Je n'ai pas trouvé de méthode pour sélectionner un dossier avec le même | contrôle. | La seule possibilité que je connaisse est l'utilisation combinée de | 'DriveListBox' et 'DirListBox'. | Savez-vous s'il existe des moyens plus élégants en dehors de TreeView qui | n'est pas simple à gérer ? | | Merci | | Aski | |
Aski
Bonjour Pascal,
Merci beaucoup pour ta réponse à la Lucky Luke. lol Bien que connaissant l'existence de "SHBrowseForFolder", je n'ai pas pensé à l'utiliser dans ce but.
Cordialement
Aski (ex Averell)
Pascal B. wrote: || Salut, || || Je n'ai pas le code sous la main, mais tu auras vite une solution en || faisant une recherche sur la fonction API: "SHBrowseForFolder" qui || affiche une boite de dialogue permettant à l'utilisateur de || selectionner un répertoire (dossier). (En pricipe cette fonction est || acompagnée de "SHGetPathFromIDList") || || Cordialement, || Pascal B. || || Regarde du côté de la fonction || "Aski" wrote in message || news:%23% ||| Bonjour, ||| ||| On utilise 'ShowOpen' pour sélectionner un fichier. ||| Je n'ai pas trouvé de méthode pour sélectionner un dossier avec le ||| même contrôle. ||| La seule possibilité que je connaisse est l'utilisation combinée de ||| 'DriveListBox' et 'DirListBox'. ||| Savez-vous s'il existe des moyens plus élégants en dehors de ||| TreeView qui n'est pas simple à gérer ? ||| ||| Merci ||| ||| Aski
Bonjour Pascal,
Merci beaucoup pour ta réponse à la Lucky Luke. lol
Bien que connaissant l'existence de "SHBrowseForFolder", je n'ai pas pensé à
l'utiliser dans ce but.
Cordialement
Aski (ex Averell)
Pascal B. wrote:
|| Salut,
||
|| Je n'ai pas le code sous la main, mais tu auras vite une solution en
|| faisant une recherche sur la fonction API: "SHBrowseForFolder" qui
|| affiche une boite de dialogue permettant à l'utilisateur de
|| selectionner un répertoire (dossier). (En pricipe cette fonction est
|| acompagnée de "SHGetPathFromIDList")
||
|| Cordialement,
|| Pascal B.
||
|| Regarde du côté de la fonction
|| "Aski" <aski@free.com> wrote in message
|| news:%23%23kfwVsKFHA.1176@TK2MSFTNGP12.phx.gbl...
||| Bonjour,
|||
||| On utilise 'ShowOpen' pour sélectionner un fichier.
||| Je n'ai pas trouvé de méthode pour sélectionner un dossier avec le
||| même contrôle.
||| La seule possibilité que je connaisse est l'utilisation combinée de
||| 'DriveListBox' et 'DirListBox'.
||| Savez-vous s'il existe des moyens plus élégants en dehors de
||| TreeView qui n'est pas simple à gérer ?
|||
||| Merci
|||
||| Aski
Merci beaucoup pour ta réponse à la Lucky Luke. lol Bien que connaissant l'existence de "SHBrowseForFolder", je n'ai pas pensé à l'utiliser dans ce but.
Cordialement
Aski (ex Averell)
Pascal B. wrote: || Salut, || || Je n'ai pas le code sous la main, mais tu auras vite une solution en || faisant une recherche sur la fonction API: "SHBrowseForFolder" qui || affiche une boite de dialogue permettant à l'utilisateur de || selectionner un répertoire (dossier). (En pricipe cette fonction est || acompagnée de "SHGetPathFromIDList") || || Cordialement, || Pascal B. || || Regarde du côté de la fonction || "Aski" wrote in message || news:%23% ||| Bonjour, ||| ||| On utilise 'ShowOpen' pour sélectionner un fichier. ||| Je n'ai pas trouvé de méthode pour sélectionner un dossier avec le ||| même contrôle. ||| La seule possibilité que je connaisse est l'utilisation combinée de ||| 'DriveListBox' et 'DirListBox'. ||| Savez-vous s'il existe des moyens plus élégants en dehors de ||| TreeView qui n'est pas simple à gérer ? ||| ||| Merci ||| ||| Aski
Aski
Bonsoir à Pascal ou au génie qui voudra bien répondre,
J'ai suivi les excellents conseils qui m'ont été donnés et j'en arrive à un code qui me permet de sélectionner un dossier sans problème. Le seul inconvénient est que je n'ai pas réussi à trouver l'astuce pour avoir un dossier donné sélectionné par défaut. C'est qui qui sait ? ;-)
Private Type BrowseInfo hWndOwner As Long pIDLRoot As Long pszDisplayName As Long lpszTitle As Long ulFlags As Long lpfnCallback As Long lParam As Long iImage As Long End Type
Private Declare Sub CoTaskMemFree Lib "ole32.dll" (ByVal hMem As Long) Private Declare Function lstrcat Lib "kernel32" Alias "lstrcatA" (ByVal lpString1 As String, ByVal lpString2 As String) As Long Private Declare Function SHBrowseForFolder Lib "shell32" (lpbi As BrowseInfo) As Long Private Declare Function SHGetPathFromIDList Lib "shell32" (ByVal pidList As Long, ByVal lpBuffer As String) As Long
Public Sub Test() 'KPD-Team 1998 'URL: http://www.allapi.net/ ' Dim iNull As Integer, lpIDList As Long, lResult As Long Dim sPath As String, udtBI As BrowseInfo
With udtBI 'Set the owner window .hWndOwner = Forms(0).hWnd 'lstrcat appends the two strings and returns the memory address .lpszTitle = lstrcat("Cliquer sur le répertoire cible" & vbCr, "e:") 'Return only if the user selected a directory .ulFlags = BIF_RETURNONLYFSDIRS End With
'Show the 'Browse for folder' dialog lpIDList = SHBrowseForFolder(udtBI) If lpIDList Then sPath = String$(MAX_PATH, 0) 'Get the path from the IDList SHGetPathFromIDList lpIDList, sPath 'free the block of memory CoTaskMemFree lpIDList iNull = InStr(sPath, vbNullChar) If iNull Then sPath = Left$(sPath, iNull - 1) End If End If
MsgBox sPath End Sub
////////////////////////////////////////////
Aski wrote: || Bonjour Pascal, || || Merci beaucoup pour ta réponse à la Lucky Luke. lol || Bien que connaissant l'existence de "SHBrowseForFolder", je n'ai pas || pensé à l'utiliser dans ce but. || || Cordialement || || Aski (ex Averell) || || Pascal B. wrote: |||| Salut, |||| |||| Je n'ai pas le code sous la main, mais tu auras vite une solution |||| en faisant une recherche sur la fonction API: "SHBrowseForFolder" |||| qui affiche une boite de dialogue permettant à l'utilisateur de |||| selectionner un répertoire (dossier). (En pricipe cette fonction |||| est acompagnée de "SHGetPathFromIDList") |||| |||| Cordialement, |||| Pascal B. |||| |||| Regarde du côté de la fonction |||| "Aski" wrote in message |||| news:%23% ||||| Bonjour, ||||| ||||| On utilise 'ShowOpen' pour sélectionner un fichier. ||||| Je n'ai pas trouvé de méthode pour sélectionner un dossier avec le ||||| même contrôle. ||||| La seule possibilité que je connaisse est l'utilisation combinée ||||| de 'DriveListBox' et 'DirListBox'. ||||| Savez-vous s'il existe des moyens plus élégants en dehors de ||||| TreeView qui n'est pas simple à gérer ? ||||| ||||| Merci ||||| ||||| Aski
Bonsoir à Pascal ou au génie qui voudra bien répondre,
J'ai suivi les excellents conseils qui m'ont été donnés et j'en arrive à un
code qui me permet de sélectionner un dossier sans problème.
Le seul inconvénient est que je n'ai pas réussi à trouver l'astuce pour
avoir un dossier donné sélectionné par défaut.
C'est qui qui sait ? ;-)
Private Type BrowseInfo
hWndOwner As Long
pIDLRoot As Long
pszDisplayName As Long
lpszTitle As Long
ulFlags As Long
lpfnCallback As Long
lParam As Long
iImage As Long
End Type
Private Declare Sub CoTaskMemFree Lib "ole32.dll" (ByVal hMem As Long)
Private Declare Function lstrcat Lib "kernel32" Alias "lstrcatA" (ByVal
lpString1 As String, ByVal lpString2 As String) As Long
Private Declare Function SHBrowseForFolder Lib "shell32" (lpbi As
BrowseInfo) As Long
Private Declare Function SHGetPathFromIDList Lib "shell32" (ByVal pidList As
Long, ByVal lpBuffer As String) As Long
Public Sub Test()
'KPD-Team 1998
'URL: http://www.allapi.net/
'KPDTeam@Allapi.net
Dim iNull As Integer, lpIDList As Long, lResult As Long
Dim sPath As String, udtBI As BrowseInfo
With udtBI
'Set the owner window
.hWndOwner = Forms(0).hWnd
'lstrcat appends the two strings and returns the memory address
.lpszTitle = lstrcat("Cliquer sur le répertoire cible" & vbCr, "e:")
'Return only if the user selected a directory
.ulFlags = BIF_RETURNONLYFSDIRS
End With
'Show the 'Browse for folder' dialog
lpIDList = SHBrowseForFolder(udtBI)
If lpIDList Then
sPath = String$(MAX_PATH, 0)
'Get the path from the IDList
SHGetPathFromIDList lpIDList, sPath
'free the block of memory
CoTaskMemFree lpIDList
iNull = InStr(sPath, vbNullChar)
If iNull Then
sPath = Left$(sPath, iNull - 1)
End If
End If
MsgBox sPath
End Sub
////////////////////////////////////////////
Aski wrote:
|| Bonjour Pascal,
||
|| Merci beaucoup pour ta réponse à la Lucky Luke. lol
|| Bien que connaissant l'existence de "SHBrowseForFolder", je n'ai pas
|| pensé à l'utiliser dans ce but.
||
|| Cordialement
||
|| Aski (ex Averell)
||
|| Pascal B. wrote:
|||| Salut,
||||
|||| Je n'ai pas le code sous la main, mais tu auras vite une solution
|||| en faisant une recherche sur la fonction API: "SHBrowseForFolder"
|||| qui affiche une boite de dialogue permettant à l'utilisateur de
|||| selectionner un répertoire (dossier). (En pricipe cette fonction
|||| est acompagnée de "SHGetPathFromIDList")
||||
|||| Cordialement,
|||| Pascal B.
||||
|||| Regarde du côté de la fonction
|||| "Aski" <aski@free.com> wrote in message
|||| news:%23%23kfwVsKFHA.1176@TK2MSFTNGP12.phx.gbl...
||||| Bonjour,
|||||
||||| On utilise 'ShowOpen' pour sélectionner un fichier.
||||| Je n'ai pas trouvé de méthode pour sélectionner un dossier avec le
||||| même contrôle.
||||| La seule possibilité que je connaisse est l'utilisation combinée
||||| de 'DriveListBox' et 'DirListBox'.
||||| Savez-vous s'il existe des moyens plus élégants en dehors de
||||| TreeView qui n'est pas simple à gérer ?
|||||
||||| Merci
|||||
||||| Aski
Bonsoir à Pascal ou au génie qui voudra bien répondre,
J'ai suivi les excellents conseils qui m'ont été donnés et j'en arrive à un code qui me permet de sélectionner un dossier sans problème. Le seul inconvénient est que je n'ai pas réussi à trouver l'astuce pour avoir un dossier donné sélectionné par défaut. C'est qui qui sait ? ;-)
Private Type BrowseInfo hWndOwner As Long pIDLRoot As Long pszDisplayName As Long lpszTitle As Long ulFlags As Long lpfnCallback As Long lParam As Long iImage As Long End Type
Private Declare Sub CoTaskMemFree Lib "ole32.dll" (ByVal hMem As Long) Private Declare Function lstrcat Lib "kernel32" Alias "lstrcatA" (ByVal lpString1 As String, ByVal lpString2 As String) As Long Private Declare Function SHBrowseForFolder Lib "shell32" (lpbi As BrowseInfo) As Long Private Declare Function SHGetPathFromIDList Lib "shell32" (ByVal pidList As Long, ByVal lpBuffer As String) As Long
Public Sub Test() 'KPD-Team 1998 'URL: http://www.allapi.net/ ' Dim iNull As Integer, lpIDList As Long, lResult As Long Dim sPath As String, udtBI As BrowseInfo
With udtBI 'Set the owner window .hWndOwner = Forms(0).hWnd 'lstrcat appends the two strings and returns the memory address .lpszTitle = lstrcat("Cliquer sur le répertoire cible" & vbCr, "e:") 'Return only if the user selected a directory .ulFlags = BIF_RETURNONLYFSDIRS End With
'Show the 'Browse for folder' dialog lpIDList = SHBrowseForFolder(udtBI) If lpIDList Then sPath = String$(MAX_PATH, 0) 'Get the path from the IDList SHGetPathFromIDList lpIDList, sPath 'free the block of memory CoTaskMemFree lpIDList iNull = InStr(sPath, vbNullChar) If iNull Then sPath = Left$(sPath, iNull - 1) End If End If
MsgBox sPath End Sub
////////////////////////////////////////////
Aski wrote: || Bonjour Pascal, || || Merci beaucoup pour ta réponse à la Lucky Luke. lol || Bien que connaissant l'existence de "SHBrowseForFolder", je n'ai pas || pensé à l'utiliser dans ce but. || || Cordialement || || Aski (ex Averell) || || Pascal B. wrote: |||| Salut, |||| |||| Je n'ai pas le code sous la main, mais tu auras vite une solution |||| en faisant une recherche sur la fonction API: "SHBrowseForFolder" |||| qui affiche une boite de dialogue permettant à l'utilisateur de |||| selectionner un répertoire (dossier). (En pricipe cette fonction |||| est acompagnée de "SHGetPathFromIDList") |||| |||| Cordialement, |||| Pascal B. |||| |||| Regarde du côté de la fonction |||| "Aski" wrote in message |||| news:%23% ||||| Bonjour, ||||| ||||| On utilise 'ShowOpen' pour sélectionner un fichier. ||||| Je n'ai pas trouvé de méthode pour sélectionner un dossier avec le ||||| même contrôle. ||||| La seule possibilité que je connaisse est l'utilisation combinée ||||| de 'DriveListBox' et 'DirListBox'. ||||| Savez-vous s'il existe des moyens plus élégants en dehors de ||||| TreeView qui n'est pas simple à gérer ? ||||| ||||| Merci ||||| ||||| Aski
Aski
Bonsoir,
Je viens de trouver la réponse à ma question après des heures de recherche. Elle existe à cette adresse.
http://www.c2i.fr/code.asp?IDCode83
Aski
Aski wrote: || Bonsoir à Pascal ou au génie qui voudra bien répondre, || || J'ai suivi les excellents conseils qui m'ont été donnés et j'en || arrive à un code qui me permet de sélectionner un dossier sans || problème. || Le seul inconvénient est que je n'ai pas réussi à trouver l'astuce || pour avoir un dossier donné sélectionné par défaut. || C'est qui qui sait ? ;-) || || Aski |||| |||| Pascal B. wrote: |||||| Salut, |||||| |||||| Je n'ai pas le code sous la main, mais tu auras vite une solution |||||| en faisant une recherche sur la fonction API: "SHBrowseForFolder" |||||| qui affiche une boite de dialogue permettant à l'utilisateur de |||||| selectionner un répertoire (dossier). (En pricipe cette fonction |||||| est acompagnée de "SHGetPathFromIDList") |||||| |||||| Cordialement, |||||| Pascal B. |||||| |||||| Regarde du côté de la fonction |||||| "Aski" wrote in message |||||| news:%23% ||||||| Bonjour, ||||||| ||||||| On utilise 'ShowOpen' pour sélectionner un fichier. ||||||| Je n'ai pas trouvé de méthode pour sélectionner un dossier avec ||||||| le même contrôle. ||||||| La seule possibilité que je connaisse est l'utilisation combinée ||||||| de 'DriveListBox' et 'DirListBox'. ||||||| Savez-vous s'il existe des moyens plus élégants en dehors de ||||||| TreeView qui n'est pas simple à gérer ? ||||||| ||||||| Merci ||||||| ||||||| Aski
Bonsoir,
Je viens de trouver la réponse à ma question après des heures de recherche.
Elle existe à cette adresse.
http://www.c2i.fr/code.asp?IDCode83
Aski
Aski wrote:
|| Bonsoir à Pascal ou au génie qui voudra bien répondre,
||
|| J'ai suivi les excellents conseils qui m'ont été donnés et j'en
|| arrive à un code qui me permet de sélectionner un dossier sans
|| problème.
|| Le seul inconvénient est que je n'ai pas réussi à trouver l'astuce
|| pour avoir un dossier donné sélectionné par défaut.
|| C'est qui qui sait ? ;-)
||
|| Aski
||||
|||| Pascal B. wrote:
|||||| Salut,
||||||
|||||| Je n'ai pas le code sous la main, mais tu auras vite une solution
|||||| en faisant une recherche sur la fonction API: "SHBrowseForFolder"
|||||| qui affiche une boite de dialogue permettant à l'utilisateur de
|||||| selectionner un répertoire (dossier). (En pricipe cette fonction
|||||| est acompagnée de "SHGetPathFromIDList")
||||||
|||||| Cordialement,
|||||| Pascal B.
||||||
|||||| Regarde du côté de la fonction
|||||| "Aski" <aski@free.com> wrote in message
|||||| news:%23%23kfwVsKFHA.1176@TK2MSFTNGP12.phx.gbl...
||||||| Bonjour,
|||||||
||||||| On utilise 'ShowOpen' pour sélectionner un fichier.
||||||| Je n'ai pas trouvé de méthode pour sélectionner un dossier avec
||||||| le même contrôle.
||||||| La seule possibilité que je connaisse est l'utilisation combinée
||||||| de 'DriveListBox' et 'DirListBox'.
||||||| Savez-vous s'il existe des moyens plus élégants en dehors de
||||||| TreeView qui n'est pas simple à gérer ?
|||||||
||||||| Merci
|||||||
||||||| Aski
Je viens de trouver la réponse à ma question après des heures de recherche. Elle existe à cette adresse.
http://www.c2i.fr/code.asp?IDCode83
Aski
Aski wrote: || Bonsoir à Pascal ou au génie qui voudra bien répondre, || || J'ai suivi les excellents conseils qui m'ont été donnés et j'en || arrive à un code qui me permet de sélectionner un dossier sans || problème. || Le seul inconvénient est que je n'ai pas réussi à trouver l'astuce || pour avoir un dossier donné sélectionné par défaut. || C'est qui qui sait ? ;-) || || Aski |||| |||| Pascal B. wrote: |||||| Salut, |||||| |||||| Je n'ai pas le code sous la main, mais tu auras vite une solution |||||| en faisant une recherche sur la fonction API: "SHBrowseForFolder" |||||| qui affiche une boite de dialogue permettant à l'utilisateur de |||||| selectionner un répertoire (dossier). (En pricipe cette fonction |||||| est acompagnée de "SHGetPathFromIDList") |||||| |||||| Cordialement, |||||| Pascal B. |||||| |||||| Regarde du côté de la fonction |||||| "Aski" wrote in message |||||| news:%23% ||||||| Bonjour, ||||||| ||||||| On utilise 'ShowOpen' pour sélectionner un fichier. ||||||| Je n'ai pas trouvé de méthode pour sélectionner un dossier avec ||||||| le même contrôle. ||||||| La seule possibilité que je connaisse est l'utilisation combinée ||||||| de 'DriveListBox' et 'DirListBox'. ||||||| Savez-vous s'il existe des moyens plus élégants en dehors de ||||||| TreeView qui n'est pas simple à gérer ? ||||||| ||||||| Merci ||||||| ||||||| Aski