Seite 1 von 1
ExplorerComboGadget mit eingestellten Filetyp
Verfasst: 26.06.2013 10:20
von Velindos
Hallo Leute,
möchte im ExplorerComboGadget nicht den Ordner sondern File´s nach Type(*.txt etc) anzeigen und wählen können.
Es gibt ja das ExplorerComboGadget mit diesem,
Code: Alles auswählen
If OpenWindow(0, 0, 0, 400, 45, "ExplorerComboGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
ExplorerComboGadget(0, 10, 10, 380, 25, GetHomeDirectory(), #PB_Explorer_Editable)
Repeat
Event = WaitWindowEvent()
Until Event = #PB_Event_CloseWindow
EndIf
jedoch gibt es dies auch für File!
Gruss ... Velindos
Re: ExplorerComboGadget mit eingestellten Filetyp
Verfasst: 26.06.2013 12:51
von Kiffi
Velindos hat geschrieben:jedoch gibt es dies auch für File!
(ich nehme mal an, dass da ein Fragezeichen stehen sollte)
Meines Wissens gibt es das ExplorerComboGadget nicht für die Anzeige von Dateien.
Aber sowas kannst Du Dir schnell auch selber zusammenbasteln.
Nimm eine einfache Combobox und befülle sie mit ExamineDirectory() / DirectoryEntryName().
Grüße ... Kiffi
Re: ExplorerComboGadget mit eingestellten Filetyp
Verfasst: 26.06.2013 13:09
von bobobo
mit Auswahlpattern gibt es das
ExplorerTreegadget(..)
und
ExplorerListgadget(..)
zur Dateiauswahl gibt es den OpenFileRequester(..) auch mit Auswahlpattern
Re: ExplorerComboGadget mit eingestellten Filetyp
Verfasst: 26.06.2013 16:08
von Velindos
Hallo,
Danke für eure rasche Hilfe. Der Wunsch war der Gedanke, das die Sache mittels Flags zu lösen ist.
Löse die Sache weiter in einen eigenen Fenster mittels ExplorerListGadget().
Gruss ... Velindos
Re: ExplorerComboGadget mit eingestellten Filetyp
Verfasst: 26.06.2013 21:32
von RSBasic
@Velindos
Falls du ExplorerComboGadget() doch für Files brauchst:
Code: Alles auswählen
EnableExplicit
Define EventID
Global NewList hIcons()
Procedure FreehIcons()
ForEach hIcons()
DestroyIcon_(hIcons())
Next
EndProcedure
Procedure GetExtensionIcon(File$)
Protected SHFILEINFO.SHFILEINFO
Protected hIcon
If SHGetFileInfo_(@File$, #FILE_ATTRIBUTE_NORMAL, @SHFILEINFO, SizeOf(SHFILEINFO), #SHGFI_SMALLICON | #SHGFI_ICON)
hIcon = SHFILEINFO\hIcon
AddElement(hIcons())
hIcons() = hIcon
ProcedureReturn hIcon
EndIf
EndProcedure
Procedure ExplorerComboGadgetEx(Gadget, x, y, Width, Height, Directory$, Plattern$, Flags = 0)
Protected ExamDir
ComboBoxGadget(Gadget, x, y, Width, Height, #PB_ComboBox_Image | Flags)
ExamDir = ExamineDirectory(#PB_Any, Directory$, Plattern$)
If ExamDir
While NextDirectoryEntry(ExamDir)
If DirectoryEntryType(ExamDir) = #PB_DirectoryEntry_File
AddGadgetItem(Gadget, -1, DirectoryEntryName(ExamDir), GetExtensionIcon(Directory$ + DirectoryEntryName(ExamDir)), 0)
EndIf
Wend
FinishDirectory(ExamDir)
EndIf
SetGadgetState(Gadget, 0)
EndProcedure
If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
ExplorerComboGadgetEx(1, 10, 10, 200, 20, "C:\", "*.*", 0)
Repeat
EventID = WaitWindowEvent()
If EventID = #PB_Event_CloseWindow
FreehIcons()
End
EndIf
ForEver
EndIf
Re: ExplorerComboGadget mit eingestellten Filetyp
Verfasst: 27.06.2013 08:39
von Velindos
Hallo,
besten Dank für dein Beispiel, habs geleich verwendet und Funkt genau wie ich es mir vorgestellt habe. Nochmals besten Dank!
Gruss ... Velindos