Tankvisualisierung

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von wollbit.

    Tankvisualisierung

    Einen schönen Sonntag :)

    Ich beschäftige mich momentan aus beruflichen Grünen seit langer Zeit mal wieder mit Visual Basic.
    Zum übern habe ich mir überlegt, eine Tankvisualisierung zu erstellen.

    Meine Überlegung war:
    Ich nehme eine Grafik eines Tanks und entferne den Hintergrund. (innerhalb des Tanks)
    Nun Lade ich das Bild in meine Form und Platziere es vor einem Panel.
    Das Panel ändert Position/Größe und Farbe entsprechend der Füllmenge. (TrackBar)
    Mit dem Panel klappt es problemlos. Das Bild hingegen ist nicht transparent. Somit kann ich das Panel nicht sehen.

    Hat jemand eine Idee, wie ich die transparenten Eigenschaften meines Bildes innerhalb meines Programmes nutzen kann?
    Oder hat jemand einen besseren Vorschlag / Ansatz zur Erstellung einer Tankvisualisierung?

    LG Olli :)

    *Topic verschoben*

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    Umgesetzter Tipp von stackoverflow:

    Nimm eine PicBox und packe Dein tw. transparentes Bild rein. Nimm das Panel und platziere beide, wo sie gemalt werden sollen (aufpassen, dass die PicBox nicht Control des Panels wird!). Stelle beide Controls mit Visible = False. Und im Code malst Du im Paint-EventHandler des Forms zuerst das Panel mit gewünschten Maßen und Farbe, dann das Bild. Ein Beispiel:

    VB.NET-Quellcode

    1. Private Sub FrmMain_Paint(sender As Object, e As PaintEventArgs) Handles Me.Paint
    2. e.Graphics.FillRectangle(Drawing.Brushes.SandyBrown, New Drawing.Rectangle(Panel1.Left, Panel1.Top, Panel1.Width, Panel1.Height))
    3. e.Graphics.DrawImage(PictureBox1.Image, New Drawing.Point(PictureBox1.Left, PictureBox1.Top))
    4. End Sub

    Bilder
    • Sanduhr1.png

      1,24 kB, 100×100, 180 mal angesehen
    • Sanduhr2.png

      1,24 kB, 100×100, 182 mal angesehen
    • Sanduhr3.png

      1,11 kB, 100×100, 178 mal angesehen
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    Sieht auf den ersten Blick gut aus. Vielen Dank.

    Edit:
    Habe es getestet. Funktionierte nicht ganz so wie ich mir das Vorgestell habe.

    Habe allerdings diesen Beitrag auf Stackoverflow gefunden:
    stackoverflow.com/questions/32…n-visual-basic-picturebox
    und mit TransparentPictureBox1.Refresh() kann ich die Picturebox aktualisieren.
    Funktioniert optimal.

    LG Olli

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „wollbit“ ()

  • Benutzer online 1

    1 Besucher

  • 2 Benutzer haben hier geschrieben