Autor Beitrag
king0180
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Di 07.02.12 14:22 
Eine Zahl aus dem Label als Zahl lesen??

Hi liebe Forengemeinde,

ich bin neu im Forum und ein Anfänger con C# , also habt ein wenig Rücksicht mit mir. ;-)

Zu meiner Frage, ich programmier (oder versuch es) ein Bankautomaten, der soll inetwa wie ein echter funktionieren.
Jetzt stehe ich allerdings vor einem Problem, bei dem ich nichts in meinen Bücher noch weder im I-net etwas gefunden habe.

Ich möchte das wenn man über Button 1,2,3,4,5,6,7,8,9,0 wie ein Numb-Block bei der Bank die Summe eingeben kann die man abheben möchte, soweit nicht das Problem.

Nun möchte ich das er, also der Kunde nur einen bestimmten Betrag abheben kann also etwa 3000€.
Wie geht man soetwas am Besten an ich dachte da an eine For Schleife, allerding ist Label ja ein Text und kein Int
convert.toInt32(label1.Text); Das leuchtet mir auch nicht so ein.
Es wird ja immer nur label1.Text.Length; abgefragt und nicht die Zahl.
Über ausgibige Antworten würde ich mich freuen.
Anbei der Quellcode.
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
bool Flag = false;
int b = 4;
for (int i = 0; i <= label1.Text.Length; )
{
  if (b >= label1.Text.Length)
  {
    Flag = true;
    MessageBox.Show("Bitte entnehmen Sie ihr Geld" + "\n" + label1.Text); break
  }
 
  if (b <= label1.Text.Length)
  {
    MessageBox.Show("Guthaben derzeit nicht verfügbar!"); break;
  }
}


Mit freundlichen Grüßen "Der Neue"

Moderiert von user profile iconTh69: C#-Tags hinzugefügt
Cäptin Pommes
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 142
Erhaltene Danke: 2



BeitragVerfasst: Di 07.02.12 14:38 
also mit label1.Text.Lenght bekommst du nur die anzahl an zeichen des labeltextes aber nicht den wert den du willst.
mit Convert.ToInt32(label1.Text) wandelt er den wert in einen int um! aber vorsicht! stehen in dem string etwas anderes als zahlen wird ein fehler ausgelöst.

also mach zumbeispiel so:

ausblenden C#-Quelltext
1:
int value = Convert.ToInt32(label1.Text);					


und value nimmst du dann in deine schleife statt den text

btw ... deine schleife ist eine endlosschleife du solltest i auch noch hochzählen ;)
king0180 Threadstarter
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Di 07.02.12 15:15 
Vielen Dank,
Es klappt wie geschmiert.
Danke nochmals.
Cäptin Pommes
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 142
Erhaltene Danke: 2



BeitragVerfasst: Di 07.02.12 15:31 
kein problem, aber du solltest deine variablen auf jedenfall besser benennen ;)