Autor |
Beitrag |
DeStein
Hält's aus hier
Beiträge: 10
WIN 7
|
Verfasst: So 24.11.13 04:17
Ich habe einen zähler der immer plus 1 macht und möchte dass man per button das änder und es plus 2 macht
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62:
| namespace WindowsFormsApplication8 { public partial class Form1 : Form { public Form1() { InitializeComponent(); }
private void button1_Click(object sender, EventArgs e) { ErhöheUmEins(); GebeAus(); } private int Zähler = 0; public void ErhöheUmEins() { Zähler += 1; } public void GebeAus() {
label1.Text = Zähler.ToString(); }
private void button2_Click(object sender, EventArgs e) { if (Zähler > 0) { ErhöheUmEins2(); } GebeAus2(); } private int Zähler2 = 1;
public void ErhöheUmEins2() { Zähler2 += 4; Zähler -= 1; } public void GebeAus2() {
label2.Text = Zähler2.ToString(); label1.Text = Zähler.ToString(); }
public void button3_Click(object sender, EventArgs e) { if (label2.Text = 100) {
} } } } |
|
|
Christian S.
      
Beiträge: 20451
Erhaltene Danke: 2264
Win 10
C# (VS 2019)
|
Verfasst: So 24.11.13 12:23
Hallo!
Du musst zusätzlich zu zähler ein zweites privates Feld anlegen, indem Du die Schrittweite speicherst. Den Inhalt des Feldes (also zum Beipsiel 1 oder 2) kannst Du dann mit einem Button ändern. Und zu zähler addierst Du dann nicht 1 sondern schrittweite.
Grüße
Christian
_________________ Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
|
|
DeStein 
Hält's aus hier
Beiträge: 10
WIN 7
|
Verfasst: So 24.11.13 12:57
Ich habe noch eine frage ganz unten bei Button 3 ist eine If Anwendung ich möchte wenn in Lable 2 100 steht das es funktioniert aber dazu muss ich string in int umwandeln wie geht das?
|
|
jaenicke
      
Beiträge: 19315
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: So 24.11.13 13:34
Dafür gibt es Parse bzw. TryParse:
msdn.microsoft.com/d....int32.tryparse.aspx
Allerdings ist diese Umwandlung gar nicht nötig, denn du selbst schreibst ja in den Text des Labels, du weißt also was drin steht.
Zuletzt bearbeitet von jaenicke am So 24.11.13 13:35, insgesamt 1-mal bearbeitet
|
|
Christian S.
      
Beiträge: 20451
Erhaltene Danke: 2264
Win 10
C# (VS 2019)
|
Verfasst: So 24.11.13 13:35
Hallo!
Vorweg: Bitte benutze Satzzeichen. Zumindest ein Punkt am Satzende ist nicht zu viel verlangt und macht das Lesen direkt viel leichter. Kommas sind auch gerne gesehen
Den Rest hat jaenicke jetzt schon geschrieben, also kann ich mir das sparen
Grüße
Christian
_________________ Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
|
|
DeStein 
Hält's aus hier
Beiträge: 10
WIN 7
|
Verfasst: So 24.11.13 14:00
Wenn ich das so mache,achtet es gar nicht darauf und gibt auch den fehler aus das int nicht in string konvertiert werden kann.Es geht also auch wenn da 0 steht.
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82:
| namespace WindowsFormsApplication8 { public partial class Form1 : Form { public Form1() { InitializeComponent(); }
private void button1_Click(object sender, EventArgs e) { ErhöheUmEins(); GebeAus(); } private int Zähler = 0; private int schrittweite = 1;
public void schritte() { schrittweite *= 2; } public void ErhöheUmEins() { Zähler += schrittweite; } public void GebeAus() {
label1.Text = Zähler.ToString(); }
private void button2_Click(object sender, EventArgs e) { if (Zähler > 0) { ErhöheUmEins2(); } GebeAus2(); } private int Zähler2 = 1; private int schrittweite2 = 4; private int schrittweite3 = 1;
public void schritte2() { schrittweite2 *= 2; schrittweite3 *= 2; }
public void ErhöheUmEins2() { Zähler2 += schrittweite2; Zähler -= schrittweite3; } public void GebeAus2() {
label2.Text = Zähler2.ToString(); label1.Text = Zähler.ToString(); }
public void button3_Click(object sender, EventArgs e) { if (label2.Text = 100) { schritte(); } }
private void button4_Click(object sender, EventArgs e) { schritte2(); } } } |
|
|
papa69
      
Beiträge: 79
Erhaltene Danke: 23
Win 10, Ubuntu
C#, Java, C
|
Verfasst: So 24.11.13 14:51
ohne jetzt böse zu sein, aber mit
Zitat DeStein C#-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
|
public void button3_Click(object sender, EventArgs e) { if (label2.Text = 100) { schritte(); } }
} |
weist du label2.text etwas zu, und vergleichst nicht !!! , ob es etwas "erreicht" hat...
Letztens hatte ich Dir schon mal 'nen Link geschickt! Lies Dir das mal richtig durch...dann verstehst du, was ich meine wegen ZUWEISEN und VERGLEICHEN
msdn.microsoft.com/d...9h%28v=vs.90%29.aspx
_________________ Daniel Bauer
... fatal ist nur, wenn sich das Licht am Ende des Tunnels als entgegenkommender ICE entpuppt ...
|
|