Avatar billede hugopedersen Nybegynder
22. januar 2002 - 12:50 Der er 17 kommentarer og
1 løsning

Avanceret browse for folder - hvordan

Jeg så engang i en eller anden forbindelse ( som jeg selvfølgelig ikke husker ) et standard Windows browse for folder vindue hvor der var en ekstra knap til at oprette et directory med.
Er der andre der har set det ?  Hvor ?
Avatar billede terry Ekspert
22. januar 2002 - 12:56 #1
Save Dialog?
Avatar billede hugopedersen Nybegynder
22. januar 2002 - 12:59 #2
Nej det er den dialog hvor du bare får mulighed for at vælge et directory.
på http://www.vb-world.net/tips/tip3.html kan du se dialogen.
Avatar billede terry Ekspert
22. januar 2002 - 13:10 #3
Ok, I though that it was the "normal" file dialog you were refreing to. I havent seen the one you are after, sorry!
22. januar 2002 - 13:14 #4
Private Type BROWSEINFO
  hOwner As Long
  pidlRoot As Long
  pszDisplayName As String
  lpszTitle As String
  ulFlags As Long
  lpfn As Long
  lParam As Long
  iImage As Long
End Type

Private Declare Function SHGetPathFromIDList Lib "shell32.dll" Alias _
            "SHGetPathFromIDListA" (ByVal pidl As Long, _
            ByVal pszPath As String) As Long
           
Private Declare Function SHBrowseForFolder Lib "shell32.dll" Alias _
            "SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) _
            As Long
           
Private Const BIF_RETURNONLYFSDIRS = &H1

Public Function BrowseFolder(szDialogTitle As String) As String
  Dim X As Long, bi As BROWSEINFO, dwIList As Long
  Dim szPath As String, wPos As Integer
 
    With bi
        .hOwner = hWndAccessApp
        .lpszTitle = szDialogTitle
        .ulFlags = BIF_RETURNONLYFSDIRS
    End With
   
    dwIList = SHBrowseForFolder(bi)
    szPath = Space$(512)
    X = SHGetPathFromIDList(ByVal dwIList, ByVal szPath)
   
    If X Then
        wPos = InStr(szPath, Chr(0))
        BrowseFolder = Left$(szPath, wPos - 1)
    Else
        BrowseFolder = ""
    End If
End Function


Brug den således:
varFoldernavn=BrowseFolder("Angiv mappe!")
Avatar billede terry Ekspert
22. januar 2002 - 13:28 #5
Thomas I think HugoP.. wants a version where there is an EXTRA button for creating a folder, or am I missing something?
Avatar billede hugopedersen Nybegynder
22. januar 2002 - 13:43 #6
Terry har helt ret - jeg ønsker en ekstra knap.
Lidt baggrund:
Jeg har en funktion i alle mine applikationer der gør at brugerne kan tage backup af backendfilen til et eller andet directory som jeg så har en andet funktion hvor det sættes op ved at brugeren udvælger et directory via en file-browse dialog. Her er det så at det er at jeg godt ville have mulighed for at brugerne kan oprette et directory til at lægge filerne i. Alternativt skal de jo starte stifinder og oprette directoriet først.
Avatar billede terry Ekspert
22. januar 2002 - 13:56 #7
22. januar 2002 - 14:18 #8
Prøv at udskifte linien
.ulFlags = BIF_RETURNONLYFSDIRS

med denne:

.ulFlags = 81
Avatar billede hugopedersen Nybegynder
22. januar 2002 - 14:30 #9
Det var lige det der skulle til Thomas
Avatar billede terry Ekspert
22. januar 2002 - 14:34 #10
Thomas, I cant get that 81 to work, whats supposed to happen?
Avatar billede terry Ekspert
22. januar 2002 - 15:12 #11
HugoP.. how did 81 help, I couldnt getanthing th happen here?
22. januar 2002 - 16:21 #12
81 (og en del andre værdier) giver en [Ny Mappe]-knap i dialogboksen
Avatar billede terry Ekspert
22. januar 2002 - 17:57 #13
thanks Thomas! Is that Ny Mappe]-knap IN the window along side the other folder icons, or is it a button above the window like a menu? I dont seem to be able to see it , but then I do need glasses:o)
Avatar billede hugopedersen Nybegynder
23. januar 2002 - 06:53 #14
Hos mig kommer der en ekstra knap nederst med teksten 'New folder'
Endvidere bliver det muligt at 'resize' vinduet og der kommer en textbox under vinduet med directoryoversigten.
Avatar billede terry Ekspert
23. januar 2002 - 08:07 #15
Strange! I see no difference at all here, maybe its because I am using NT 4.0
23. januar 2002 - 08:28 #16
uden tvivl, Terry. Jeg har før oplevet at disse dialogbokse opførte sig forskelligt på NT.
Avatar billede terry Ekspert
23. januar 2002 - 08:31 #17
thanks :o)
Avatar billede hugopedersen Nybegynder
20. februar 2002 - 10:03 #18
Det fungerer heller ikke altid med 81 på Windows 9x har jeg fundet ud af.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester