vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: Textfarbe eines Labels 
Autor: cookstdu
Datum: 11.02.09 16:03

Habe dir mal das Grundgrüst einer Klasse gebaut.

Imports System.Drawing.Drawing2D
Imports System.ComponentModel
 
Public Class RainbowLabel
    Inherits UserControl
    Private _Interval As Integer = 100
    Private _Text = "RegenbogenFarben"
    Private _Textalign As StringAlignment
    Private _Ani As Boolean
    Public Property Interval() As Integer
        Get
            Return _Interval
        End Get
        Set(ByVal value As Integer)
            _Interval = value
            t.Interval = _Interval
        End Set
    End Property
    Public Property Animation() As Boolean
        Get
            Return _Ani
        End Get
        Set(ByVal value As Boolean)
            _Ani = value
            t.Enabled = value
        End Set
    End Property
    <BrowsableAttribute(True)> _
    Public Overrides Property Text() As String
        Get
            Return _Text
        End Get
        Set(ByVal value As String)
            _Text = value
        End Set
    End Property
    Public Property Textalign() As StringAlignment
        Get
            Return _Textalign
        End Get
        Set(ByVal value As StringAlignment)
            _Textalign = value
        End Set
    End Property
    Private cList As New List(Of Color)
    WithEvents t As New Timer
 
    Private Sub RainbowLabel_Load(ByVal sender As Object, ByVal e As _
      System.EventArgs) Handles Me.Load
        Dim cb As Color() = {Color.Red, _
                    Color.Orange, Color.Yellow, Color.Green, Color.LightBlue, _
                    Color.Indigo, Color.Violet}
        cList.AddRange(cb)
        t.Interval = _Interval
        t.Enabled = _Ani
        Me.Size = TextRenderer.MeasureText(Me.Text, Me.Font, Me.Size, _
          TextFormatFlags.HorizontalCenter)
        Me.Height += Me.Font.Height / 2
    End Sub
    Private color_blend As New ColorBlend
    Private Sub RainbowLabel_Paint(ByVal sender As Object, ByVal e As _
      System.Windows.Forms.PaintEventArgs) Handles Me.Paint
        Using br As New LinearGradientBrush(New Point(0, 0), New  _
               Point(Me.DisplayRectangle.Width, Me.Height / 2), Color.Red, _
               Color.Violet)
            color_blend.Colors = cList.ToArray
            color_blend.Positions = New Single() {0, 0.16, 0.33, 0.47, 0.66, _
              0.82, 1}
            br.InterpolationColors = color_blend
            Dim sf As New StringFormat
            sf.Alignment = _Textalign
            e.Graphics.DrawString(_Text, Me.Font, br, Me.ClientRectangle, sf)
        End Using
    End Sub
 
    Private Sub t_Tick(ByVal sender As Object, ByVal e As System.EventArgs) _
      Handles t.Tick
        Dim lc As Color = cList.Item(6)
        cList.RemoveAt(6)
        cList.Insert(0, lc)
        Me.Refresh()
    End Sub
End Class
Hoffe es hilft
cu

Wenn alle Stricke rei?en, dann h?ng ich mich auf. ~ Karl Kraus

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Textfarbe eines Labels5.121Caddy08.02.09 18:03
Re: Textfarbe eines Labels4.561jvbsl08.02.09 19:43
Re: Textfarbe eines Labels4.588Caddy08.02.09 19:47
Re: Textfarbe eines Labels4.498jvbsl08.02.09 19:54
Re: Textfarbe eines Labels4.558Caddy08.02.09 20:05
Re: Textfarbe eines Labels4.683GPM08.02.09 19:59
Re: Textfarbe eines Labels4.684Caddy09.02.09 10:04
Re: Textfarbe eines Labels4.776cookstdu09.02.09 07:32
Re: Textfarbe eines Labels4.541cookstdu11.02.09 16:03
Re: Textfarbe eines Labels4.483Caddy11.02.09 19:00
Re: Textfarbe eines Labels4.482cookstdu11.02.09 19:05
Re: Textfarbe eines Labels4.464Caddy11.02.09 19:08
Re: Textfarbe eines Labels4.480cookstdu11.02.09 19:40

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel