Rubrik: Grafik und Font · Grafische Effekte | VB-Versionen: VB.NET | 18.07.05 |
Hintergrund-Farbverlauf (VB.NET) Dieser Tipp zeigt, wie einfach sich unter VB.NET ein Hintergrund-Farbverlauf für ein Form-Objekt erzeugen und anzeigen lässt. | ||
Autor: Dieter Otter | Bewertung: | Views: 26.412 |
www.tools4vb.de | System: WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Unter VB6 brauchte man für einen "ordentlichen" Farbverlauf noch allerhand API-Funktionen und -Aufrufe. Unter VB.NET ist das jetzt viel einfacher. Hier kann man direkt auf die LinearGradientBrush-Funktion aus der Klasse "System.Drawing.Drawing2D" zurückgreifen.
Wann immer das Fenster bzw. dessen Inhalt neu gezeicheichnet werden muss, wird das OnPaint-Ereignis der Form ausgelöst. Und genau hier ist dann auch der richtige "Ort", um den Hintergrund-Farbverlauf zu erstellen.
Imports System.Drawing.Drawing2D Public Class Form1 ' Hintergrund-Farbverlauf erstellen Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs) ' Größe der Form Dim oRect As New Rectangle(0, 0, Me.Width, Me.Height) ' Neues Brush-Objekt mit den gewünschten Farben und ' Farbverlauf-Richtung erstellen Dim oBrush As New LinearGradientBrush(oRect, Color.White, Color.Blue, _ LinearGradientMode.ForwardDiagonal) ' Hintergrund-Farbverlauf anzeigen e.Graphics.FillRectangle(oBrush, oRect) End Sub End Class
Über den Parameter "LinearGradientMode" kann die Richtung des Farbverlaufs festgelegt werden. Zur Auswahl stehen:
- BackwardDiagonal
- ForwardDiagonal
- Horizontal
- Vertical