PictureTagger/SB-PictureTagger/Modul_Tools.vb

184 lines
8.1 KiB
VB.net

Module Modul_Tools
'Methonden_Index:
'1.Datei- und Ordnerdialoge (Mindesanforderung: VB.Net 2005; Framework: 2.0)
' 1.1 FolderBrowserDialog
' 1.2 OpenFileDialog
' 1.3 SaveFileDialog
'###################################################################################################################
'############### 1.Datei- und Ordnerdialoge ########################################################################
'############### http://www.vb-fun.de/dotnet/tipps/tip0212.shtml ###################################################
'###################################################################################################################
'###################################################################################################################
'############### 1.1 FolderBrowserDialog ###########################################################################
'###################################################################################################################
Public Sub FolderBrowserDialog(ByRef sPath As String)
'Verändert die übergebene variable,
'wenn der benutzer durch "OK" den neuen Pfad bestätigt
Using fbd As New FolderBrowserDialog
With fbd
' Ordnervorschlag
.SelectedPath = "c:\"
' RootFolder verwendet man nur zum Eingrenzen auf eine _
' bestimmte Ordnerebene
' z.B.: .RootFolder = Environment.SpecialFolder.MyPictures
.Description = "Bitte einen Ordner auswählen."
' Button "Neuen Ordner erstellen" anzeigen
.ShowNewFolderButton = True
' Zeile ruft den Dialog auf, weitere Ausführung nur bei
' Resultat OK:
If .ShowDialog = Windows.Forms.DialogResult.OK Then
sPath = .SelectedPath
Else
'Nothing
End If
End With
End Using
End Sub 'FolderBrowserDialog
'###################################################################################################################
'############### 1.2 OpenFileDialog ################################################################################
'###################################################################################################################
'Private Sub Button1_Click(ByVal sender As Object, ByVal e As _
' EventArgs) Handles Button1.Click
' ' ### OpenFileDialog ###
' Dim txt As String = ""
' Using ofd As New OpenFileDialog
' With ofd
' ' Ordnervorschlag
' .InitialDirectory = Pfad
' .Title = "Wähle Datei zum öffnen"
' ' Dateivorschlag (falls sinnvoll)
' ' .FileName = "Datei.gif"
' ' Filter
' .Filter = TextBox2.Text
' ' boolsche Abfrage ob Mehrfachauswahl zulässig
' .Multiselect = Not ChkEinzel.Checked
' ' Zeile ruft den Dialog auf, weitere Ausführung nur bei
' ' Resultat OK:
' If .ShowDialog = Windows.Forms.DialogResult.OK Then
' If ChkEinzel.Checked = True Then
' ' Bei Einzelauswahl wertet man .FileName aus
' txt = .FileName & vbNewLine
' Else
' ' Bei möglicher Multiselektion wertet man
' ' das Array .FileNames aus
' For Each filename As String In .FileNames
' txt &= filename & vbNewLine
' Next
' End If
' ' Welcher Filter wurde verwendet?
' Dim idx As Integer = .FilterIndex
' txt &= "FilterIndex: " & idx.ToString & vbNewLine
' txt &= "Gewählter Filter: " & FilterDescription(.Filter, _
' idx) & vbNewLine
' txt &= "Multiselect: " & .Multiselect.ToString
' Else
' txt = "Abbruch durch Benutzer"
' End If
' End With
' End Using
' TextBox1.Text = txt
'End Sub 'OpenFileDialog
'###################################################################################################################
'############### 1.3 SaveFileDialog ################################################################################
'###################################################################################################################
'Private Sub Button2_Click(ByVal sender As Object, ByVal e As _
' EventArgs) Handles Button2.Click
' ' ### SaveFileDialog ###
' Dim txt As String
' Using sfd As New SaveFileDialog
' With sfd
' ' Ordnervorschlag
' .InitialDirectory = Pfad
' .Title = "Eingabe Datei zum speichern (Es wird hier nicht "_
' "wirklich überschrieben)"
' ' Dateivorschlag
' .FileName = "Datei.gif"
' ' Filter
' .Filter = TextBox2.Text
' ' Zeile ruft den Dialog auf, weitere Ausführung nur bei
' ' Resultat OK:
' If .ShowDialog = Windows.Forms.DialogResult.OK Then
' txt = .FileName & vbNewLine
' ' Welcher Filter wurde verwendet?
' Dim idx As Integer = .FilterIndex
' txt &= "FilterIndex: " & idx.ToString & vbNewLine
' txt &= "Gewählter Filter: " & FilterDescription(.Filter, _
' idx)
' Else
' txt = "Abbruch durch Benutzer"
' End If
' End With
' End Using
' TextBox1.Text = txt
'End Sub 'SaveFileDialog
'###################################################################################################################
'############### xxxxxxxxxxxxxxxxxxxxxxx ###########################################################################
'###################################################################################################################
'Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As _
' Object, ByVal e As EventArgs) _
' Handles ComboBox1.SelectedIndexChanged
' Dim strFilter As String
' Select Case ComboBox1.SelectedIndex
' Case 0
' ' Einfacher Filter
' strFilter = "Gif Bilddateien|*.gif"
' Case 1
' ' Erweiterter Filter
' strFilter = "JPEG Bilddateien|*.jpg|Gif Bilddateien|*.gif|Alle Dateien|*.*"
' Case Else
' ' Mehrere Dateierweiterungen in einer Auswahl
' strFilter = "Alle Bilddateien|*.jpg; *.jpeg; *.bmp; *.gif, *.tif|Alle Dateien|*.*"
' End Select
' TextBox2.Text = strFilter
'End Sub 'ComboBox1_SelectedIndexChanged
'Private Function FilterDescription(ByVal Filter As String, _
' ByVal Index As Integer) As String
' ' erstellt aus dem Filterstring die Bezeichnung
' Dim strArr() As String = Split(Filter, "|"), _
' MyList As New List(Of String)
' For i As Integer = 0 To strArr.GetUpperBound(0)
' If (i Mod 2 = 0) Then MyList.Add(strArr(i))
' Next
' Return MyList(Index - 1)
'End Function 'FilterDescription
'###################################################################################################################
'############### 1.Datei- und Ordnerdialoge ################################# ENDE #########################
'############### http://www.vb-fun.de/dotnet/tipps/tip0212.shtml ###################################################
'###################################################################################################################
End Module