[VB] Bilder anhand einer Bedingung anzeigen

Dieses Thema im Forum "Programmieren" wurde erstellt von tomtimo, 8. Oktober 2003.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. tomtimo

    tomtimo ROM

    Registriert seit:
    8. Oktober 2003
    Beiträge:
    3
    Hallo,

    ich habe eine Frage zu VB

    Ich möchte in einem Programm zwei Bilder einfügen. Ganz einfach! Aber, ist in einer ComboBox Listindex 1 ausgewählt , soll Bild1 an Psition A und Bild2 an Position B stehen. Ist Listindex=0 soll Bild 1 an Position B und Bild 2 an Position A stehen.
    Das hatte ich auch schonmal am klappen, aber ich bekomme es nicht mehr hin. Weiter möchte ich die Bilder mit dem Parameter "app.Path" laden, da der Pfad zu den Bildern nicht immer der gleiche sein soll.

    Kann mir jemand helfen?

    schonmal vielen Dank

    CU
     
  2. MichaelausP

    MichaelausP Viertel Gigabyte

    Registriert seit:
    20. Juni 2001
    Beiträge:
    2.985
    So, hier der vollständige Code:


    Private Sub cmdOK_Click()
    End 'Beendet das Programm
    End Sub

    Private Sub ComboList1_Click()
    On Error GoTo fehler
    ' Auswahl, welcher Eintrag gewählt wurde

    Set ImgLinks.Picture = LoadPicture(App.Path & "\Bild1.jpg")
    Set ImgRechts.Picture = LoadPicture(App.Path & "\bild2.jpg")

    Select Case ComboList1.ListIndex
    Case 0 'keine Auswahl ... Index Null
    Set ImgLinks.Picture = LoadPicture(App.Path & "\Bild2.jpg")
    Set ImgRechts.Picture = LoadPicture(App.Path & "\bild1.jpg")
    Me.ImgLinks.Visible = True
    Me.ImgRechts.Visible = True
    Me.labHinweis.Caption = "Die Bilder wurden vertauscht."

    Case 1 ' der erste Eintrag wurde gewählt
    Me.ImgLinks.Visible = True ' die Bedingung, was geschehen soll
    Me.ImgRechts.Visible = False ' die Bedingung für das zweite Bild
    Me.labHinweis.Caption = "Erster Eintrag gewählt, Bild links"
    Case 2 ' der zweite Eintrag ist gewählt

    Me.ImgLinks.Visible = False
    Me.ImgRechts.Visible = True
    Me.labHinweis.Caption = "Zweiter Eintrag gewählt, Bild rechts"
    End Select ' Beendet die Anweisung Select Case
    Exit Sub ' Hier wird die Prozedur beendet, wenn kein Fehler auftritt

    '*** Fehlerbehandlung *********************************************************
    fehler:
    Rückgabe = fehler(Err)


    End Sub

    Private Sub Form_Load()
    ' die ComboListbox füllen
    With ComboList1
    .AddItem "", 0
    .AddItem "Bild 1", 1
    .AddItem "Bild 2", 2
    End With
    With List1 ' die Listbox füllen
    .AddItem "Bild 1", 0
    .AddItem "Bild 2", 1
    End With

    End Sub

    Private Sub List1_Click()
    On Error GoTo fehler

    Set ImgLinks.Picture = LoadPicture(App.Path & "\Bild1.jpg")
    Set ImgRechts.Picture = LoadPicture(App.Path & "\bild2.jpg")
    If Me.List1.Selected(0) = True Then
    Me.ImgLinks.Visible = True ' die Bedingung für die Anzeigen
    Me.ImgRechts.Visible = False ' auch für Bild Zwei
    Me.labHinweis.Caption = "Erster Eintrag ausgewählt, Bild links"
    ElseIf Me.List1.Selected(1) = True Then
    Me.ImgLinks.Visible = False ' die Bedingung für die Anzeigen
    Me.ImgRechts.Visible = True ' auch für Bild Zwei
    Me.labHinweis.Caption = "Zweiter Eintrag ausgewählt, Bild rechts"
    End If

    If Me.List1.Selected(0) = False And Me.List1.Selected(1) = False Then
    Set ImgLinks.Picture = LoadPicture(App.Path & "\Bild2.jpg")
    Set ImgRechts.Picture = LoadPicture(App.Path & "\bild1.jpg")
    Me.ImgLinks.Visible = True ' die Bedingung für die Anzeigen
    Me.ImgRechts.Visible = True ' auch für Bild Zwei
    Me.labHinweis.Caption = "Kein Bild ausgewählt, Bilder wurden getauscht"
    ElseIf Me.List1.Selected(0) = True And Me.List1.Selected(1) = True Then
    Set ImgLinks.Picture = LoadPicture(App.Path & "\Bild1.jpg")
    Set ImgRechts.Picture = LoadPicture(App.Path & "\bild2.jpg")
    Me.ImgLinks.Visible = True ' die Bedingung für die Anzeigen
    Me.ImgRechts.Visible = True ' auch für Bild Zwei
    Me.labHinweis.Caption = "Zwei Bilder ausgewählt, beide Bilder sichtbar"
    End If
    Exit Sub ' Hier wird die Prozedur beendet, wenn kein Fehler auftritt

    '*** Fehlerbehandlung *********************************************************
    fehler:
    Rückgabe = fehler(Err)
    End Sub



    Inhalt der Fehler.bas:

    Option Explicit
    Public Rückgabe%


    Function fehler(Fehlerwert)
    Const ftitel As String = "Fehler aufgetreten!"

    Select Case Fehlerwert
    Case 53
    MsgBox "Die Bild-Datei konnte nicht im Programmverzeichnis gefunden werden!" & Chr(13) _
    & "Kopieren Sie beide Bilddateien aus dem Setuparchiv (VBEXE.ZIP) in das Programmverzeichnis!", vbExclamation + vbOKOnly, ftitel

    End Select

    End Function

    #################################

    Hoffe, du kommst klar.
     
Status des Themas:
Es sind keine weiteren Antworten möglich.

Diese Seite empfehlen