Minimaler Dateidialog basierend auf FileChooser GUI Komponente
Autor: Steffen Ploetz
(Stand der EN Seite vom 17.03.2024)
Der Zweck dieses Code-Schnipsels ist
-
die Erstellung und Verwendung eines minimalistischen Dialogs zu zeigen, der die GUI-Komponente
FileCooser verwendet, um
-
eine Alternative zur statischen Methode
OpenFile der Komponente gb.form.dialog zu haben - die (in einer GTK-Umgebung, siehe Komponente gb.gui) zwar GTK-kompatibel ist, aber nicht komfortabel.
Der Code kann als Vorlage für minimalistische Dialoge verwendet werden, die andere Chooser-GUI-Komponenten verwenden.
Dieser Code-Schnipsel unterstützt nur einen modalen Dialog für die Auswahl einer einzelnen Datei und verwendet nur zwei Event-Handler der
FileCooser GUI-Komponente,
Activate und
Cancel.
Die Erweiterung der Möglichkeiten des Dialogs mit zusätzlichen
Static Public Function und Funktionsargumenten ist sehr einfach.
Die Gambas-Code-Datei FFileChooser.class sieht wie folgt aus:
' Gambas class file
Static Private sLastSelectedPath As String
Static Private bResult As Boolean
Static Public Function OpenSigleFileModal() As Boolean
Dim hForm As Form
sLastSelectedPath = ""
bResult = False
hForm = New FFileChooser
hForm.ShowModal()
Return bResult
End
Static Public Function LastSelectedPath() As String
Return sLastSelectedPath
End
Public Sub cFileChooser_Activate()
sLastSelectedPath = cFileChooser.SelectedPath
bResult = True
Me.Close
End
Public Sub cFileChooser_Cancel()
Me.Close
End
Die Gambas Formular-Datei FFileChooser.form sieht wie folgt aus:
# Gambas Form File 3.0
{ Form Form
MoveScaled(0,0,64,53)
Arrangement = Arrange.Vertical
Margin = True
{ cFileChooser FileChooser
MoveScaled(1,1,62,51)
Expand = True
ShowButton = True
ReadOnly = True
}
}
Die
Form-Eigenschaft
Arrangement ist auf
Vertical und die
cFileChooser-Eigenschaft
Expand auf
True eingestellt. Dies ermöglicht, dass sich das
FileChooser-Steuerelement automatisch an Änderungen der Größe des
Form anpasst.
Die
cFileChooser-Eigenschaft
ShowButton wird auf
True gesetzt. Dadurch werden die Schaltflächen "OK" und "Abbrechen" sowie das Dropdown "Filter" angezeigt.
Die
cFileChooser-Eigenschaft
ReadOnly wird auf
True gesetzt. Damit wird das
FileChooser-Steuerelement als
FileOpen-Steuerelement verwendet.
Der Aufruf des Dialogs sieht wie folgt aus:
Public Sub btnFileOpen_Click()
Dim fileChooser As FFileChooser
Dim sLastSelectedPath As String
If FFileChooser.OpenSigleFileModal() = True Then
sLastSelectedPath = FFileChooser.LastSelectedPath()
Else
sLastSelectedPath = ""
Endif
End
Änderungen der Seite
Minimaler Dateidialog basierend auf FileChooser GUI Komponente: Steffen Ploetz - 28. März 2024