vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: [VB Express]Bildanzeigeprogramm: Vor/Zurück Navigation 
Autor: Manfred X
Datum: 02.06.12 00:47

Hallo!

Hier ein Formular, das es ermöglicht, im Dialog einen ORDNER
mit Bilddateien zu wählen und per PageUp/Down durch die
Bild-Dateien im Ordner zu navigieren.

Dabei wird nicht der Designer eingesetzt, sondern ALLES wird
per Code erstellt.

Erstelle ein neues Windows-Forms-Projekt und gibt dem
Formular den Namen "frmPicBrowser."
Füge ganz oben in der Codedatei die Imports-Anweisung (System.Linq) ein
und kopiere zwischen Public Class frmBrowser .... End Class
den folgenden Code ein.
Public Class frmPicBrowser 'Dieses Statement ist bereits vorhanden
 
   'Dialog und Picturebox incl. Eigenschaften erstellen
    Dim fbd As New FolderBrowserDialog With _
    {.Description = "Ordner mit Bilddateien wählen", .ShowNewFolderButton = _
    False}
    Dim pbox As New PictureBox With _
    {.Parent = Me, .Dock = DockStyle.Fill, .SizeMode = PictureBoxSizeMode.Zoom}
 
    'Erstellung der Verwaltungs-Variablen:
    '======================================
    'Array mit den unterstützten Bilddatei-Extensions incl. Wildcard für 
    ' Getfiles-Methode
    Dim picfileextensions() As String = _
    {"*.jpg", "*.jpeg", "*.png", "*gif", "*.tiff", "*.tif", "*.bmp"}
 
    'Liste der Dateinamen im gewählten Ordner
    Dim picfiles As New List(Of String)
 
    'Hier wird jeweils der aktuelle Bildindex abgelegt
    Dim picindex As Integer
 
    Private Sub frmPicBrowser_KeyDown(ByVal sender As Object, _
        ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
 
        'Verarbeitung der Steuerungstasten
 
        Dim stepp As Integer = 1
        If e.Modifiers = Keys.Control Then stepp = 10 'CTRL-Taste: höhere 
        ' Schrittweite
 
        Select Case e.KeyCode
            Case Is = Keys.F1
                Dim t As String = "Tastenfunktionen: " & vbCrLf & vbCrLf & _
                    "F-Taste: Ordnerauswahl" & vbCrLf & _
                    "PageUp/PageDown: Navigation durch Bilddateien" & vbCrLf & _
                    "CTRL erhöht die Schrittweite der Navigation" & vbCrLf & _
                    "Home/End: Sprung zur ersten/letzten Datei in der Liste"
                MsgBox(t, MsgBoxStyle.Information, "PicBrowser")
            Case Is = Keys.F
                'Orderauswahl-Dialog (ggf. Abbruch durch User)
                If fbd.ShowDialog = DialogResult.Cancel Then Exit Sub
 
                Me.Text = "Bilddateien werden ermittelt ....."
                With My.Computer.FileSystem
                    picfiles = .GetFiles(fbd.SelectedPath, _
                                FileIO.SearchOption.SearchTopLevelOnly, _
                                picfileextensions).ToList
                End With
                If picfiles.Count < 1 Then
                    MsgBox("Ordner enthält keine GDI+unterstützten" & _
                      "Datei-Formate")
                    picindex = -1
                Else
                    picindex = 0
                End If
            Case Is = Keys.PageDown                
                picindex = Math.Min(picfiles.Count - 1, picindex + stepp)
            Case Is = Keys.PageUp
                picindex = Math.Max(0, picindex - stepp)                
            Case Is = Keys.Home
                picindex = 0
            Case Is = Keys.End
                picindex = picfiles.Count - 1
        End Select
 
        'Bild aus der Datei am aktuellen Listenindex laden (falls möglich)
        LoadPic()
    End Sub
 
    Private Sub LoadPic()
        If picindex >= 0 And picindex < picfiles.Count Then
            'Bild laden und Dateiname anzeigen
            pbox.LoadAsync(picfiles(picindex))
            Me.Text = "[" & CStr(picindex + 1) & " von  " & _
                CStr(picfiles.Count) & "] " & _
                IO.Path.GetFileName(picfiles(picindex))
        Else
            pbox.Image = pbox.ErrorImage
            Me.Text = "Keine Bilddatei vorhanden"
        End If
    End Sub
 
End Class 'Dieses Statement ist bereits vorhanden
Nach dem Start der Anwendung: Taste F1 betätigen.

Bei Unklarheiten: Nachfragen.

MfG
Manfred

Beitrag wurde zuletzt am 02.06.12 um 01:00:54 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
[VB Express]Bildanzeigeprogramm: Vor/Zurück Navigation2.086betagold201.06.12 18:24
Re: [VB Express]Bildanzeigeprogramm: Vor/Zurück Navigation1.516Manfred X01.06.12 18:49
Re: [VB Express]Bildanzeigeprogramm: Vor/Zurück Navigation1.595betagold201.06.12 22:18
Re: [VB Express]Bildanzeigeprogramm: Vor/Zurück Navigation1.529Manfred X02.06.12 00:47
Re: [VB Express]Bildanzeigeprogramm: Vor/Zurück Navigation1.472betagold202.06.12 16:04
Re: [VB Express]Bildanzeigeprogramm: Vor/Zurück Navigation1.557Manfred X02.06.12 16:41

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel