2016-04-12 13 views
0

Ich möchte die Hintergrundfarbe des Etiketts ändern, so dass es allmählich ändert, aber aus irgendeinem Grund kann ich nicht die RGB-Funktion verwenden. und mein Lehrer ist nicht eine echte Hilfe, weil er nicht wirklich bitteVerwenden Sie Zugriff VB.net, um Hintergrundfarbe der Formularsteuerung zu ändern

Public Class Form1 
Dim r, g, b As Integer 

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 
    Timer1.Enabled = True 

End Sub 

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click 
    Timer1.Enabled = False 

End Sub 

Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick 
    r = 0 
    g = 0 
    b = 0 

    For r = 1 To 225 
     r += 1 
     LblColor.BackColor = RGB(r, g, b) 
    Next 
    For g = 1 To 255 
     g += 1 
     LblColor.BackColor = RGB(r, g, b) 
    Next 
    For b = 1 To 255 
     b += 1 
     LblColor.BackColor = RGB(r, g, b) 
    Next 

End Sub 

Private Function RGB(r As Integer, g As Integer, b As Integer) As Color 

End Function 

Private Sub LblColor_Click(sender As Object, e As EventArgs) Handles LblColor.Click 

End Sub 

End Class

Antwort

0

Die RGB() Funktion eingebaut ist, um VBA helfen lehrt. Versuchen Sie, Ihre eigene Version zu entfernen - es ist proly in die Quere kommen.

Private Function RGB()... ' | 
    ...      | <--- remove this bit 
End Function     | 
+0

, wenn ich tue, dass es unterstreicht „RGB (r, g, b) "und sagt, dass" integer "nicht in Farbe – Jonasgo

+0

konvertiert werden kann. Probieren Sie color.FromRGB aus. Wie Smandoli darauf hinweist, wird die Funktion nicht neu definiert (aber dann leer gelassen). –

0

ok so fand ich heraus, dass für VB.Net Ich habe diese verwenden: LblColor.BackColor = Color.FromArgb(r, g, b) und jetzt funktioniert es Dank für die Hilfe

Verwandte Themen