Autor Thema: Dateipfad ...  (Gelesen 1372 mal)

Offline andrew22

  • Aktives Mitglied
  • ***
  • Beiträge: 126
  • Ich liebe dieses Forum!
Dateipfad ...
« am: 22.06.05 - 14:23:08 »
hi ho

Ich habe ne Schaltfläche und möchte gern Verzeichnisstruktur durchsuchen also openfiledialog und dann nur ne Verzeichnisauswahl machen ohne datei.

Also wie nen Durchsuchen Button allerdings soll dann im feld nur Verzeichnis Pfad stehen als z.B. C:\temp nicht C:\temp\bla.txt

 ???

Offline diali

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.023
  • Geschlecht: Männlich
Re: Dateipfad ...
« Antwort #1 am: 22.06.05 - 14:27:24 »
ja mit der Win-API. Hatten wir glaube ich schon mal im Forum.
Gruß
Dirk

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Dateipfad ...
« Antwort #2 am: 22.06.05 - 14:28:45 »
Hi,

das hatten wir hier schon mal.

Guckst du hier: Nur Ordner auswählen

Bitte in Zukunft auch mal die Forensuche benutzen.


Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline diali

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.023
  • Geschlecht: Männlich
Re: Dateipfad ...
« Antwort #3 am: 22.06.05 - 14:29:51 »
habs auf die Schnelle im Forum nicht gefunden
Code
'Dialog\OrdnerAuswahl: 

Option Public

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

Const vbNullChar = &H0
Const vbNullString = &H0

Declare Function SHBrowseForFolder Lib "shell32" (lpbi As BrowseInfo) As Long
Declare Function SHGetPathFromIDList Lib "shell32" (Byval pidList As Long, Byval lpBuffer As String) As Long
Declare Function lstrcat Lib "kernel32" Alias "lstrcatA" (Byval lpString1 As String, Byval lpString2 As String) As Long

Public Function BrowseForFolder(Titel As String, hWnd As Long) As String
 Dim lngIDList As Long
 Dim strBuffer As String
 Dim usrBrowseInfo As BrowseInfo
 
 usrBrowseInfo.hwndOwner = hWnd
 usrBrowseInfo.lpszTitle = lstrcat(Titel, "")
 usrBrowseInfo.ulFlags = 3
 
 lngIDList = SHBrowseForFolder(usrBrowseInfo)
 If (lngIDList) Then
  strBuffer = Space(260)
  SHGetPathFromIDList lngIDList, strBuffer
  strBuffer = Fulltrim(strBuffer)
  If Right(strBuffer, 1) <> "\" Then strBuffer = strBuffer & "\"
  BrowseForFolder = strBuffer
 End If
End Function

Sub Initialize
 wert = BrowseForFolder("Ordnerauswahl",&H0)
 Msgbox wert
End Sub
Gruß
Dirk

Offline Manfred Dillmann

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 858
  • Geschlecht: Männlich
    • www.madicon.de
Re: Dateipfad ...
« Antwort #4 am: 22.06.05 - 14:56:22 »
Ohne API gehts auch:

1. notesUIWorkspace.SaveFileDialog

Code
stringArray = notesUIWorkspace.SaveFileDialog( directoriesOnly , [title$] , [filters$] , [initialDirectory$] , [initialFile$] )

directoriesOnly
Boolean.
- True displays directories only.
- False displays directories and files.

This method returns a name. It does not save or perform any other action on files.

Sicherlich etwas merkwürdig zum Öffnen eine "Save"-Methode nehmen zu müssen.  ;)

2. uiws.Prompt

Code
Dim MeinOrdner As String
MeinOrdner = uiws.Prompt(14,"","")

Die "14" ist nicht dokumentiert, funktioniert aber wie gewünscht. Die anderen Parameter (Title and Prompt) werden dann aber ignoriert. Der Dialog ist dann nicht änderbar mit "Choose folder" benannt.

Gruß
Manfred

Support, Beratung, Schulung, Anwendungsentwicklung oder Tipps & Tricks zu Lotus Notes/Domino?
www.madicon.de

Personalisierte Notes/Domino Serienmails?
madicon easyMail


 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz