RGB
lima-city → Forum → Programmiersprachen → Basic
befehl
beispiel
code
einsetzen
farbe
formular
geregelt danke
hintergrundfarbe
intervall
programm
prozessor
schleife
sender
start
starten
system
tick
variante code
verwenden
zugreifen
-
Hey
wie kann ich in VB machen, dass sich der Rot-Wert einer Farbe nach und nach erhöht?
So in der Form:
Do I=I+1 Me.backcolor=RGB(I, 50, 50) Loop until I=100
mfg -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Also wenn du die Veränderung sehen möchtest, musst du einen Timer einsetzen, weil dein Prozessor viel zu schnell ist, als dass du die Veränderungen, die er durch eine Schleife berechnet sehen könntest.
Ich nehme an, dass du VB.NET verwendest, da du Me.backcolor schreibst und nicht Form1.backcolor .
Also hier ein Beispiel was direkt beim Starten des Programms anfängt die Hintergrundfarbe nach deinen Wünschen zu ändern. (Hab ich selber gecodet und auch getestet - funktioniert )
Public Class Form1 Dim i As Integer Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load i = 0 Timer1.Start() End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Me.BackColor = Color.FromArgb(i, 50, 50) i = i + 1 End Sub End Class
Die Geschwindigkeit wird über das Intervall des Timers geregelt.
Beitrag zuletzt geändert: 1.12.2009 15:51:30 von rms -
Danke! Jetzt klappt es.
-
Es wäre auch Möglich, einfach nach jeder Veränderung den Befehl
Application.DoEvents()
aufzurufen.
Implementiert in deine Variante:
Do I=I+1 Me.backcolor=RGB(I, 50, 50) Application.DoEvents() Loop until I=100
Oder hier eine andere Variante:
For i As Integer = 0 to 100 Me.BackColor = RGB(i, 50, 50) Application.DoEvents() Next
Wenn du Application.DoEvents() verwendest, brauchst du keinen zusätzlichen Timer verwenden, aber kannst, während die "Veränderung läuft" nicht wirklich auf das Formular zugreifen (<-- Dieses reagiert dann etwas verlangsamt) -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage