none
Verschiedene bilder in einem Form per click anzeigen. RRS feed

  • Frage

  • Hallo ich hoffe ich bin hier richtig :) Ich habe gegoogelt aber nicht das richtige gefunden.

    Ich möchte eine exe erstellen wo enn man sie öffnet sich ein fenster öffnet. Das geht.

    In dem Fenster möchte ich gerne button haben :  Bild 1 , Bild 2 , Bild 3 ..... das bekomm ich auch hin.

    Drück ich auf Button bild 1 (button code : Form2.Show()  ) öffnet sich Form 2 und dort wird das bild angezeigt. Soweit geht es auch.

    Jetzt möchte ich aber das Bild 1  in dem geöfneten Fenster Angezeigt wird und nicht in einem neuen.

    Und wenn man auf Bild 2 oder Bild 3 drückt soll das entsprechende Bild in dem Fenster Angezeigt werden.

    Leider bekomme ich es nicht ganz hin. Für Hilfe währe ich Dankbar.

    Pe Se : Es muss auch nicht unbedingt per Button sein sondern kann auch über ein drop down menü geregelt sein. Leider habe ich keine Ahnung wie es geht, da ich noch neu in Visual Studio bin.

    Freitag, 27. Februar 2015 22:29

Antworten

  • Hallo,
    welche Programmiersprache verwendest du denn? Da du Form2.Show() schreibst gehe ich jetzt mal von VB.NET aus - dort funktioniert das leider. Und welche Technologie (WinForms, WPF, ..)? Ich zeige es jetzt einfach anhand von WinForms - in WPF und Co heißen nur die Klassen etwas anders.

    Innerhalb der Form2 müsstest du eine PictureBox verwendet haben, um das Bild anzuzeigen. Genauso kannst du es nun auch auf Form1 machen. Ziehe einfach eine PictureBox aus der Toolbox auf die Form und benenne sie am Besten gleich ordentlich (also nicht PictureBox sondern beispielsweise pbOutput o.ä.) - so wirst du dich später besser im Code zurecht finden.

    Innerhalb der Eventhandler der Buttons kannst du nun einfach das Bild neu zuweisen:

    pbOutput.Image = New Bitmap("DATEIPFAD")
    'Oder wie auch immer du das Bild laden willst

    Fertig, mehr ist da eigentlich nicht dahinter.

    Ebenfalls möglich wäre es alle Bilder in einem Array zu speichern und dann eines per Index auszuwählen:

    Private imgs As Image() = New Image() {New Bitmap(), New Bitmap(), New Bitmap()}
    '3 Bilder laden und ins Array packen'
    
    Private Sub comboBoxImage_SelectionChanged(Sender As Object, e As EventArgs)
    	pbOutput.Image = imgs(comboBoxImage.SelectedIndex)
    	'Bild anhand des gewählten Item-Indexes aus dem 'Array abrufen
    End Sub
    Diese Variante ist besonders dann praktisch wenn du beispielsweise eine Combobox einsetzen willst oder auch wenn du sehr viele Bilder hast.


    Tom Lambert - .NET (C#) MVP
    Wozu Antworten markieren und für Beiträge abstimmen? Klicke hier.
    Nützliche Links: .NET Quellcode | C# ↔ VB.NET Konverter | Account bestätigen (Verify Your Account)
    Ich: Webseite | Code Beispiele | Facebook | Twitter | Snippets

    Samstag, 28. Februar 2015 00:43
    Moderator