OVH Cloud OVH Cloud

bowser folder ?

4 réponses
Avatar
HeLioZz
bonjour a tous !
est ce que quelqu un aurait un exple de syntaxe pour un browser folder ??
merci d avance

4 réponses

Avatar
Macadam
HeLioZz a écrit :
bonjour a tous !
est ce que quelqu un aurait un exple de syntaxe pour un browser folder ??
merci d avance



Vu que je viens de VB6, je te donne ma source sous VB6 (ci-dessous).
Elle peut te donner une idée en attendant, sa m'interesse aussi ta
question :)
DotNet, j'suis pas un expert.

'CODE PAR DUKE49
'http://duke49.ifrance.com
'BROWSE FOLDER
Public 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 Const BIF_RETURNONLYFSDIRS = 1
Private Const MAX_PATH = 260
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

'BROWSE FILE
Private Type OPENFILENAME
lStructSize As Long
hwndOwner As Long
hInstance As Long
lpstrFilter As String
lpstrCustomFilter As String
nMaxCustFilter As Long
nFilterIndex As Long
lpstrFile As String
nMaxFile As Long
lpstrFileTitle As String
nMaxFileTitle As Long
lpstrInitialDir As String
lpstrTitle As String
flags As Long
nFileOffset As Integer
nFileExtension As Integer
lpstrDefExt As String
lCustData As Long
lpfnHook As Long
lpTemplateName As String
End Type
Private Declare Function GetOpenFileName Lib "comdlg32.dll" Alias
"GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long
Dim OFName As OPENFILENAME
Dim arDir() As String

Public Function DLG_GetFullFile(VB_Feuille As Form, sPrompt As String,
Optional sFilter As String, Optional sDirRoot As String) As String
Dim i As Long

OFName.lStructSize = Len(OFName)
OFName.hwndOwner = VB_Feuille.hWnd
OFName.hInstance = App.hInstance
If sFilter = "" Then
OFName.lpstrFilter = "Executables (*.exe)" + Chr$(0) + "*.exe"
+ Chr$(0) _
+ "Dynamic Link Library (*.dll)" + Chr$(0) + "*.dll" + Chr$(0) _
+ "Tous les fichiers (*.*)" + Chr$(0) + "*.*" + Chr$(0)
Else
OFName.lpstrFilter = sFilter
End If

OFName.lpstrFile = Space$(254)
OFName.nMaxFile = 255
OFName.lpstrFileTitle = Space$(254)
OFName.nMaxFileTitle = 255
If OFName.lpstrInitialDir = "" Then OFName.lpstrInitialDir = "C:"
If sDirRoot <> "" Then OFName.lpstrInitialDir = sDirRoot
OFName.lpstrTitle = sPrompt
OFName.flags = 0

If GetOpenFileName(OFName) Then
'INFOS FICHIERS
OFName.lpstrFile = Trim$(Left(OFName.lpstrFile, InStr(1,
OFName.lpstrFile, Chr(0)) - 1))
DLG_GetFullFile = OFName.lpstrFile
arDir = Split(OFName.lpstrFile, "")
OFName.lpstrFileTitle = arDir(UBound(arDir))
If UBound(arDir) = 1 Then
OFName.lpstrInitialDir = arDir(0)
Else
OFName.lpstrInitialDir = ""
For i = 0 To UBound(arDir) - 1
OFName.lpstrInitialDir = OFName.lpstrInitialDir & arDir(i)
& ""
Next i
End If
Else
DLG_GetFullFile = ""
End If

End Function

Public Function DLG_GetFullFolder(VB_Feuille As Form, sPrompt As String)
As String
Dim iNull As Integer
Dim lpIDList As Long
Dim lResult As Long
Dim sPath As String
Dim udtBI As BrowseInfo

With udtBI
.hwndOwner = VB_Feuille.hWnd
.lpszTitle = lstrcat(sPrompt, "")
.ulFlags = BIF_RETURNONLYFSDIRS
End With

lpIDList = SHBrowseForFolder(udtBI)

If lpIDList Then
sPath = String$(MAX_PATH, 0)
lResult = SHGetPathFromIDList(lpIDList, sPath)
Call CoTaskMemFree(lpIDList)
iNull = InStr(sPath, vbNullChar)
If iNull Then sPath = Left$(sPath, iNull - 1)
End If

If sPath <> "" And Right(sPath, 1) <> "" Then sPath = sPath & ""
DLG_GetFullFolder = sPath


End Function
Avatar
djmcg
Est-ce ceci que tu cherche ?

Private Sub mnuOpenItem_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles mnuOpenItem.Click
OpenFileDialog1.Filter = "Bitmaps (*.bmp)|*.bmp"
If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
PictureBox1.Image = System.Drawing.Image.FromFile _
(OpenFileDialog1.FileName)
mnuCloseItem.Enabled = True
End If
End Sub

??

Macadam a écrit :
HeLioZz a écrit :
bonjour a tous !
est ce que quelqu un aurait un exple de syntaxe pour un browser folder ??
merci d avance



Vu que je viens de VB6, je te donne ma source sous VB6 (ci-dessous).
Elle peut te donner une idée en attendant, sa m'interesse aussi ta
question :)
DotNet, j'suis pas un expert.

'CODE PAR DUKE49
'http://duke49.ifrance.com
'BROWSE FOLDER
Public 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 Const BIF_RETURNONLYFSDIRS = 1
Private Const MAX_PATH = 260
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

'BROWSE FILE
Private Type OPENFILENAME
lStructSize As Long
hwndOwner As Long
hInstance As Long
lpstrFilter As String
lpstrCustomFilter As String
nMaxCustFilter As Long
nFilterIndex As Long
lpstrFile As String
nMaxFile As Long
lpstrFileTitle As String
nMaxFileTitle As Long
lpstrInitialDir As String
lpstrTitle As String
flags As Long
nFileOffset As Integer
nFileExtension As Integer
lpstrDefExt As String
lCustData As Long
lpfnHook As Long
lpTemplateName As String
End Type
Private Declare Function GetOpenFileName Lib "comdlg32.dll" Alias
"GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long
Dim OFName As OPENFILENAME
Dim arDir() As String

Public Function DLG_GetFullFile(VB_Feuille As Form, sPrompt As String,
Optional sFilter As String, Optional sDirRoot As String) As String
Dim i As Long

OFName.lStructSize = Len(OFName)
OFName.hwndOwner = VB_Feuille.hWnd
OFName.hInstance = App.hInstance
If sFilter = "" Then
OFName.lpstrFilter = "Executables (*.exe)" + Chr$(0) + "*.exe" +
Chr$(0) _
+ "Dynamic Link Library (*.dll)" + Chr$(0) + "*.dll" + Chr$(0) _
+ "Tous les fichiers (*.*)" + Chr$(0) + "*.*" + Chr$(0)
Else
OFName.lpstrFilter = sFilter
End If

OFName.lpstrFile = Space$(254)
OFName.nMaxFile = 255
OFName.lpstrFileTitle = Space$(254)
OFName.nMaxFileTitle = 255
If OFName.lpstrInitialDir = "" Then OFName.lpstrInitialDir = "C:"
If sDirRoot <> "" Then OFName.lpstrInitialDir = sDirRoot
OFName.lpstrTitle = sPrompt
OFName.flags = 0

If GetOpenFileName(OFName) Then
'INFOS FICHIERS
OFName.lpstrFile = Trim$(Left(OFName.lpstrFile, InStr(1,
OFName.lpstrFile, Chr(0)) - 1))
DLG_GetFullFile = OFName.lpstrFile
arDir = Split(OFName.lpstrFile, "")
OFName.lpstrFileTitle = arDir(UBound(arDir))
If UBound(arDir) = 1 Then
OFName.lpstrInitialDir = arDir(0)
Else
OFName.lpstrInitialDir = ""
For i = 0 To UBound(arDir) - 1
OFName.lpstrInitialDir = OFName.lpstrInitialDir & arDir(i) &
""
Next i
End If
Else
DLG_GetFullFile = ""
End If

End Function

Public Function DLG_GetFullFolder(VB_Feuille As Form, sPrompt As String)
As String
Dim iNull As Integer
Dim lpIDList As Long
Dim lResult As Long
Dim sPath As String
Dim udtBI As BrowseInfo

With udtBI
.hwndOwner = VB_Feuille.hWnd
.lpszTitle = lstrcat(sPrompt, "")
.ulFlags = BIF_RETURNONLYFSDIRS
End With

lpIDList = SHBrowseForFolder(udtBI)

If lpIDList Then
sPath = String$(MAX_PATH, 0)
lResult = SHGetPathFromIDList(lpIDList, sPath)
Call CoTaskMemFree(lpIDList)
iNull = InStr(sPath, vbNullChar)
If iNull Then sPath = Left$(sPath, iNull - 1)
End If

If sPath <> "" And Right(sPath, 1) <> "" Then sPath = sPath & ""
DLG_GetFullFolder = sPath


End Function


Avatar
Richard Clark
Il y a un composant FolderBrowseDialog dans .NET v1.1:

Dim fdb as New FolderBrowseDialog
If fdb.ShowDialog = DialogResult.OK Then
Dim sPath as String = fdb.SelectedPath
'...
End If

http://www.c2i.fr/code.aspx?IDCodeI6

--
Richard Clark
http://www.c2i.fr Le 1er site .NET
http://www.project-hoshimi.com
"Macadam" a écrit dans le message de
news:45d360cc$0$27389$
HeLioZz a écrit :
bonjour a tous !
est ce que quelqu un aurait un exple de syntaxe pour un browser folder ??
merci d avance



Vu que je viens de VB6, je te donne ma source sous VB6 (ci-dessous).
Elle peut te donner une idée en attendant, sa m'interesse aussi ta
question :)
DotNet, j'suis pas un expert.

'CODE PAR DUKE49
'http://duke49.ifrance.com
'BROWSE FOLDER
Public 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 Const BIF_RETURNONLYFSDIRS = 1
Private Const MAX_PATH = 260
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

'BROWSE FILE
Private Type OPENFILENAME
lStructSize As Long
hwndOwner As Long
hInstance As Long
lpstrFilter As String
lpstrCustomFilter As String
nMaxCustFilter As Long
nFilterIndex As Long
lpstrFile As String
nMaxFile As Long
lpstrFileTitle As String
nMaxFileTitle As Long
lpstrInitialDir As String
lpstrTitle As String
flags As Long
nFileOffset As Integer
nFileExtension As Integer
lpstrDefExt As String
lCustData As Long
lpfnHook As Long
lpTemplateName As String
End Type
Private Declare Function GetOpenFileName Lib "comdlg32.dll" Alias
"GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long
Dim OFName As OPENFILENAME
Dim arDir() As String

Public Function DLG_GetFullFile(VB_Feuille As Form, sPrompt As String,
Optional sFilter As String, Optional sDirRoot As String) As String
Dim i As Long

OFName.lStructSize = Len(OFName)
OFName.hwndOwner = VB_Feuille.hWnd
OFName.hInstance = App.hInstance
If sFilter = "" Then
OFName.lpstrFilter = "Executables (*.exe)" + Chr$(0) + "*.exe" +
Chr$(0) _
+ "Dynamic Link Library (*.dll)" + Chr$(0) + "*.dll" + Chr$(0) _
+ "Tous les fichiers (*.*)" + Chr$(0) + "*.*" + Chr$(0)
Else
OFName.lpstrFilter = sFilter
End If

OFName.lpstrFile = Space$(254)
OFName.nMaxFile = 255
OFName.lpstrFileTitle = Space$(254)
OFName.nMaxFileTitle = 255
If OFName.lpstrInitialDir = "" Then OFName.lpstrInitialDir = "C:"
If sDirRoot <> "" Then OFName.lpstrInitialDir = sDirRoot
OFName.lpstrTitle = sPrompt
OFName.flags = 0

If GetOpenFileName(OFName) Then
'INFOS FICHIERS
OFName.lpstrFile = Trim$(Left(OFName.lpstrFile, InStr(1,
OFName.lpstrFile, Chr(0)) - 1))
DLG_GetFullFile = OFName.lpstrFile
arDir = Split(OFName.lpstrFile, "")
OFName.lpstrFileTitle = arDir(UBound(arDir))
If UBound(arDir) = 1 Then
OFName.lpstrInitialDir = arDir(0)
Else
OFName.lpstrInitialDir = ""
For i = 0 To UBound(arDir) - 1
OFName.lpstrInitialDir = OFName.lpstrInitialDir & arDir(i) &
""
Next i
End If
Else
DLG_GetFullFile = ""
End If

End Function

Public Function DLG_GetFullFolder(VB_Feuille As Form, sPrompt As String)
As String
Dim iNull As Integer
Dim lpIDList As Long
Dim lResult As Long
Dim sPath As String
Dim udtBI As BrowseInfo

With udtBI
.hwndOwner = VB_Feuille.hWnd
.lpszTitle = lstrcat(sPrompt, "")
.ulFlags = BIF_RETURNONLYFSDIRS
End With

lpIDList = SHBrowseForFolder(udtBI)

If lpIDList Then
sPath = String$(MAX_PATH, 0)
lResult = SHGetPathFromIDList(lpIDList, sPath)
Call CoTaskMemFree(lpIDList)
iNull = InStr(sPath, vbNullChar)
If iNull Then sPath = Left$(sPath, iNull - 1)
End If

If sPath <> "" And Right(sPath, 1) <> "" Then sPath = sPath & ""
DLG_GetFullFolder = sPath


End Function


Avatar
HeLioZz
oui c est ca !! merci beaucoup !!

"djmcg" a écrit :

Est-ce ceci que tu cherche ?

Private Sub mnuOpenItem_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles mnuOpenItem.Click
OpenFileDialog1.Filter = "Bitmaps (*.bmp)|*.bmp"
If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
PictureBox1.Image = System.Drawing.Image.FromFile _
(OpenFileDialog1.FileName)
mnuCloseItem.Enabled = True
End If
End Sub

??

Macadam a écrit :
> HeLioZz a écrit :
>> bonjour a tous !
>> est ce que quelqu un aurait un exple de syntaxe pour un browser folder ??
>> merci d avance
>
> Vu que je viens de VB6, je te donne ma source sous VB6 (ci-dessous).
> Elle peut te donner une idée en attendant, sa m'interesse aussi ta
> question :)
> DotNet, j'suis pas un expert.
>
> 'CODE PAR DUKE49
> 'http://duke49.ifrance.com
> 'BROWSE FOLDER
> Public 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 Const BIF_RETURNONLYFSDIRS = 1
> Private Const MAX_PATH = 260
> 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
>
> 'BROWSE FILE
> Private Type OPENFILENAME
> lStructSize As Long
> hwndOwner As Long
> hInstance As Long
> lpstrFilter As String
> lpstrCustomFilter As String
> nMaxCustFilter As Long
> nFilterIndex As Long
> lpstrFile As String
> nMaxFile As Long
> lpstrFileTitle As String
> nMaxFileTitle As Long
> lpstrInitialDir As String
> lpstrTitle As String
> flags As Long
> nFileOffset As Integer
> nFileExtension As Integer
> lpstrDefExt As String
> lCustData As Long
> lpfnHook As Long
> lpTemplateName As String
> End Type
> Private Declare Function GetOpenFileName Lib "comdlg32.dll" Alias
> "GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long
> Dim OFName As OPENFILENAME
> Dim arDir() As String
>
> Public Function DLG_GetFullFile(VB_Feuille As Form, sPrompt As String,
> Optional sFilter As String, Optional sDirRoot As String) As String
> Dim i As Long
>
> OFName.lStructSize = Len(OFName)
> OFName.hwndOwner = VB_Feuille.hWnd
> OFName.hInstance = App.hInstance
> If sFilter = "" Then
> OFName.lpstrFilter = "Executables (*.exe)" + Chr$(0) + "*.exe" +
> Chr$(0) _
> + "Dynamic Link Library (*.dll)" + Chr$(0) + "*.dll" + Chr$(0) _
> + "Tous les fichiers (*.*)" + Chr$(0) + "*.*" + Chr$(0)
> Else
> OFName.lpstrFilter = sFilter
> End If
>
> OFName.lpstrFile = Space$(254)
> OFName.nMaxFile = 255
> OFName.lpstrFileTitle = Space$(254)
> OFName.nMaxFileTitle = 255
> If OFName.lpstrInitialDir = "" Then OFName.lpstrInitialDir = "C:"
> If sDirRoot <> "" Then OFName.lpstrInitialDir = sDirRoot
> OFName.lpstrTitle = sPrompt
> OFName.flags = 0
>
> If GetOpenFileName(OFName) Then
> 'INFOS FICHIERS
> OFName.lpstrFile = Trim$(Left(OFName.lpstrFile, InStr(1,
> OFName.lpstrFile, Chr(0)) - 1))
> DLG_GetFullFile = OFName.lpstrFile
> arDir = Split(OFName.lpstrFile, "")
> OFName.lpstrFileTitle = arDir(UBound(arDir))
> If UBound(arDir) = 1 Then
> OFName.lpstrInitialDir = arDir(0)
> Else
> OFName.lpstrInitialDir = ""
> For i = 0 To UBound(arDir) - 1
> OFName.lpstrInitialDir = OFName.lpstrInitialDir & arDir(i) &
> ""
> Next i
> End If
> Else
> DLG_GetFullFile = ""
> End If
>
> End Function
>
> Public Function DLG_GetFullFolder(VB_Feuille As Form, sPrompt As String)
> As String
> Dim iNull As Integer
> Dim lpIDList As Long
> Dim lResult As Long
> Dim sPath As String
> Dim udtBI As BrowseInfo
>
> With udtBI
> .hwndOwner = VB_Feuille.hWnd
> .lpszTitle = lstrcat(sPrompt, "")
> .ulFlags = BIF_RETURNONLYFSDIRS
> End With
>
> lpIDList = SHBrowseForFolder(udtBI)
>
> If lpIDList Then
> sPath = String$(MAX_PATH, 0)
> lResult = SHGetPathFromIDList(lpIDList, sPath)
> Call CoTaskMemFree(lpIDList)
> iNull = InStr(sPath, vbNullChar)
> If iNull Then sPath = Left$(sPath, iNull - 1)
> End If
>
> If sPath <> "" And Right(sPath, 1) <> "" Then sPath = sPath & ""
> DLG_GetFullFolder = sPath
>
>
> End Function