Moin Moin,
für ein eigens entwickeltes Projekt möchte ich eine Ampelphase über einen Timer steuern.
Leider bin ich noch am Start meiner C#-Karriere und benötige daher EURE Hilfe.
Es geht darum, dass ich es einfach nicht hinbekomme, eine Ampehlphase zu programmieren die sich alle paar Sekunden wiederholt. Mein Code schaft es bisher nur, überhaupt eine wechselnde Ausgabe zu geben.
Hier ein teil meines bisherigen Codes:
private void btnWeiter_Click(object sender, EventArgs e)
{ // Timer starten, Interval anlegen
timer1.Start();
timer1.Interval = 2000;
}
private void timer1_Tick(object sender, EventArgs e)
{
timer1.Interval = 2000;
timer1.Tick += new EventHandler(labelDich);
}
int timerCount = 0;
private void labelDich(object sender, EventArgs e)
{
timerCount++;
Timer t2 = new Timer();
if (timerCount < 2)
{
label1.BackColor = Color.Red;
label2.BackColor = Color.Yellow;
label3.BackColor = Color.Black;
}
else if (timerCount > 2 && timerCount < 8)
{
label1.BackColor = Color.Red;
label2.BackColor = Color.Yellow;
label3.BackColor = Color.Green;
}
else if (timerCount > 8 && timerCount < 10 && timerCount < 12)
{
label1.BackColor = Color.Black;
label2.BackColor = Color.Yellow;
label3.BackColor = Color.Black;
}
// Und hier sollte die Ampehphase sich jetzt wiederholen!!!!!
Update();
}
Bestimmt könnt Ihr mir helfen und daher schon mal vielen Dank im Vorraus
für ein eigens entwickeltes Projekt möchte ich eine Ampelphase über einen Timer steuern.
Leider bin ich noch am Start meiner C#-Karriere und benötige daher EURE Hilfe.
Es geht darum, dass ich es einfach nicht hinbekomme, eine Ampehlphase zu programmieren die sich alle paar Sekunden wiederholt. Mein Code schaft es bisher nur, überhaupt eine wechselnde Ausgabe zu geben.
Hier ein teil meines bisherigen Codes:
private void btnWeiter_Click(object sender, EventArgs e)
{ // Timer starten, Interval anlegen
timer1.Start();
timer1.Interval = 2000;
}
private void timer1_Tick(object sender, EventArgs e)
{
timer1.Interval = 2000;
timer1.Tick += new EventHandler(labelDich);
}
int timerCount = 0;
private void labelDich(object sender, EventArgs e)
{
timerCount++;
Timer t2 = new Timer();
if (timerCount < 2)
{
label1.BackColor = Color.Red;
label2.BackColor = Color.Yellow;
label3.BackColor = Color.Black;
}
else if (timerCount > 2 && timerCount < 8)
{
label1.BackColor = Color.Red;
label2.BackColor = Color.Yellow;
label3.BackColor = Color.Green;
}
else if (timerCount > 8 && timerCount < 10 && timerCount < 12)
{
label1.BackColor = Color.Black;
label2.BackColor = Color.Yellow;
label3.BackColor = Color.Black;
}
// Und hier sollte die Ampehphase sich jetzt wiederholen!!!!!
Update();
}
Bestimmt könnt Ihr mir helfen und daher schon mal vielen Dank im Vorraus