Anzeige

 VB.Net: Transparente Quadrate mit Rand auf Image anzeigen

JHae

Grünschnabel
#1
Hallo Zusammen,

ich bin ganz neu hier und blutiger Anfänger in vb.net. Ich versuche gerade mein VBA Excel Programm neu in Win Forms (Express 2015) umzubasteln und scheitere grandios an einer vermutlich einfachen Sache.

In einer Form befindet sich ein, sich zur Laufzeit änderndes Image, welches an 50 fixen Positionen mit transparenten Quadraten überlagert ist. Die Quadrate repräsentieren jeweils Ergebnisse und können die Rahmenfarbe Rot oder Grün annehmen, zudem können sie über einen Button auch gänzlich ausgeblendet werden.

In VBA konnte ich das sehr einfach mit 50 transparenten Images machen, welche ich über dem eigentlichen Image platziert habe und je nach Bedarf mit visible=true/false bzw. bordercolor =rot/grün gefügig gemacht habe. In VB.net ist das ganz offensichtlich nicht möglich.

Kann mir jemand bitte (detailiert, da Anfänger) auf die Sprünge helfen?

Vielen Dank

Jürgen
 

Spyke

Capoeirista
Premium-User
#2
Zeichnest du die Quadrate selber oder sind das 50 einzelne Controls?
Wenn ja welche Controls? (Controls Transparent zu gestalten ist bissl blöder und zieht auch mehr die performance runter)

Gleich mal vorweg gesagt, am einfachsten wär dein Problem zu lösen in dem du selbst zeichnest.
Dafür bräuchtest du nur das Paint Ereignis.
In den PaintEventArgs hättest du ein Graphics Objekt mit dem du easy zeichnen könntest.
 

JHae

Grünschnabel
#3
Hallo Spyke,
sorry, bin erst jetzt dazu gekommen weiter zu machen, allerdings war diese schnelle Hilfe auch schon des Pudels Kern.
Ich habe das genau wie vorgeschlagen gemacht und funktioniert prima.
Einfach die Rechtecke in die PictureBox zeichen und zack......
Vielen Dank für die schnelle Hilfe
Jürgen
 
Anzeige
Anzeige