Alexander12
Erfahrenes Mitglied
Hi.
Ich habe Mal etwas versucht. Ich wollte mal so ein kleine Mini-Schachspiel proggen, hab also 64 Pictureboxen auf die Form geklatscht, dass es so schwarz-weiß Karriert aussieht.
Nun habe Ich für jede pictureBox eine Variable erstellt, also 64.
Nun überprüft ein Timer jede Millisekunde den Wert der Variablen, moment ...
So, dass sind die Bedeutungen der Variablen. Nun der Timer:
So, jetzt überprüft er die Werte und stellt die entsprechende Figur auf das Feld...
So, es ist kein Fehler im Code 100%-tig!! Aber wenn ihr bemerkt habt, dass es nur der Code für das erste Feld von 64 ist, dann wisst ihr ja was da für Arbeit blüht...
Ich muss diese Prozedur also 64 programmieren, wäre das Programm nicht langsam, denkt dran: Jede MILLISEKUNDE 64 Mal dieser Code. Das geht nicht.
Kann Ich das einfacher lösen, also danner alle Felder auf einmal prüft, etc.
Bitte, Bitte, Ihr erspart mir so um die 10 Jahre Arbeit, kein Witz!
MfG Alexander12
Ich habe Mal etwas versucht. Ich wollte mal so ein kleine Mini-Schachspiel proggen, hab also 64 Pictureboxen auf die Form geklatscht, dass es so schwarz-weiß Karriert aussieht.
Nun habe Ich für jede pictureBox eine Variable erstellt, also 64.
Nun überprüft ein Timer jede Millisekunde den Wert der Variablen, moment ...
Code:
// Werte der Variablen
// 11 = Bauer weiß; 21 = Bauer schwarz
// 12 = Turm weiß; 22 = Turm schwarz
// 13 = Springer weiß; 23 = Springer schwarz
// 14 = Läufer weiß; 24 = Läufer schwarz
// 15 = Dame weiß; 25 = Dame schwarz
// 16 = König weiß; 26 = König schwarz
// 0 = weiß; 1 = schwarz
So, dass sind die Bedeutungen der Variablen. Nun der Timer:
Code:
private void tmr_figuren_Tick(object sender, EventArgs e)
{
// Feld A1
switch (_a1)
{
case 11:
this.a1.Image = Image.FromFile("data/bauer_weiß.PNG");
break;
case 21:
this.a1.Image = Image.FromFile("data/bauer_schwarz.PNG");
break;
case 12:
this.a1.Image = Image.FromFile("data/turm_weiß.PNG");
break;
case 22:
this.a1.Image = Image.FromFile("data/turm_schwarz.PNG");
break;
case 13:
this.a1.Image = Image.FromFile("data/springer_weiß.PNG");
break;
case 23:
this.a1.Image = Image.FromFile("data/springer_schwarz.PNG");
break;
case 14:
this.a1.Image = Image.FromFile("data/laeufer_weiß.PNG");
break;
case 24:
this.a1.Image = Image.FromFile("data/laeufer_schwarz.PNG");
break;
case 15:
this.a1.Image = Image.FromFile("data/dame_weiß.PNG");
break;
case 25:
this.a1.Image = Image.FromFile("data/dame_schwarz.PNG");
break;
case 16:
this.a1.Image = Image.FromFile("data/koenig_weiß.PNG");
break;
case 26:
this.a1.Image = Image.FromFile("data/koenig_schwarz.PNG");
break;
}
}
So, es ist kein Fehler im Code 100%-tig!! Aber wenn ihr bemerkt habt, dass es nur der Code für das erste Feld von 64 ist, dann wisst ihr ja was da für Arbeit blüht...
Ich muss diese Prozedur also 64 programmieren, wäre das Programm nicht langsam, denkt dran: Jede MILLISEKUNDE 64 Mal dieser Code. Das geht nicht.
Kann Ich das einfacher lösen, also danner alle Felder auf einmal prüft, etc.
Bitte, Bitte, Ihr erspart mir so um die 10 Jahre Arbeit, kein Witz!
MfG Alexander12