Migający tekst
Dziś pokaże wam jak w prosty sposób zmusić jakąś kontrolkę wyświetlającą tekst, aby zmieniały się kolory czcionki. Czasami będziemy mieli potrzebę, aby właśnie w ten sposób wyróżnić jakiś element na formie.
Zabierzmy się do pracy, otwieramy nową formę, na niej umieszczamy jeden Label, jeden Button i Timer. Właściwość ForeColor Label'a zmieniamy z ControlText na Black. Timer Interval ustawiamy na 500. Teraz napiszemy kod dla naszego Button'a oraz Timer'a:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Timer1.Start() End Sub Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick If Label1.ForeColor = Color.Black Then Label1.ForeColor = Color.Red ElseIf Label1.ForeColor = Color.Red Then Label1.ForeColor = Color.Black End If End Sub
Żeby pokazać to w jakiejś użytecznej dla nas formie powrócimy kilka działów do tyłu gdzie omawialiśmy operacje na datach i ustawimy dla niej kontrolkę, która zacznie migać gdy przekroczymy w niej jakąś określoną wartość (dla naszych potrzeb będzie to wartość powyżej 15 sekund).
Private godzwejscia As Date ' deklarujemy zmienną godzina wejscia 'Przycisk obliczający upływ czasu od momentu rozpoczęcia pracy Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Dim elapsedtime As TimeSpan = DateTime.Now.Subtract(godzwejscia) TextBox3.Text = elapsedtime.Hours.ToString & " godzin " & elapsedtime.Minutes.ToString & " minut " & elapsedtime.Seconds.ToString & " sekund" If elapsedtime.Seconds > 15 Then Timer1.Start() End If End Sub 'Przycisk pobierający godzinę rozpoczęcia pracy Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click godzwejscia = DateTime.Now ' przypisanie zmiennej godzwyjscia aktualnego czasu TextBox1.Text = godzwejscia.ToString End Sub 'Instrukcja podmiany kolorów dla Timera Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick If TextBox3.ForeColor = Color.Black Then TextBox3.ForeColor = Color.Red ElseIf TextBox3.ForeColor = Color.Red Then TextBox3.ForeColor = Color.Black End If End Sub
W normalnych warunkach ustawilibyśmy instrukcję warunkową w poniższy sposób:
If elapsedtime.Hours >= 8 Then Timer1.Start() End IfTylko kto normalny w warunkach "warsztatowych" będzie czekać 8 godzin, aby sprawdzić czy tekst zaczął migać :)
To była taka mała wstawka na rozluźnienie, bo przed nami ciężki temat o bazach danych.
Utworzono 17.09.2015
Brak komentarzy:
Prześlij komentarz