[VB Frage] Label begrenzen!

12/31/2010 15:29 c01nsk1llz#1
Also, ich habe momentan ein Problem, und zwar programmiere ich ein Spiel, in VB...:)
Das Problem ist, das mit dem Geld. Wenn man angenommen noch 40 Gold hat und etwas 50 Gold kostet, steht da -10
Code:
        If ComboBox1.SelectedItem = "5a" Then
            Label3.Text -= 50
Es soll aber eine Meldung kommen
Code:
        If ComboBox1.SelectedItem = "5a" Then
            Label3.Text -= 50
          MsgBox("Du kannst nicht weniger als 0 Taler besitzen")
und dann soll kein -10 erscheinen, sondern die Taleranzahl(Geld/Gold-Anzahl) soll nach der MsgBox auf 40 bleiben!
12/31/2010 15:50 .BritainAndy#2
ich kann kein bisschen vb aber kann man das nich mit ner if abfrage machen?

if Label3.text > 0 then
msgbox("du kanns nicht weniger Taler besitzen")
12/31/2010 15:58 c01nsk1llz#3
Leider das gleiche Problem.
(-10 Taler)...
Wenn ich es in einen Timer oder in die Form packe,
erscheint die Fehlermeldung durchgehend..

__

Ich brauch ya eine Funktion, die das zurücksetzt auf 40 Taler..

Trotzdem Danke
12/31/2010 17:42 Konata-Chan#4
das programm soll vor dem SChreiben prüfen ob das und das unter 0 ist...
also.....
Code:
If Label3 - 50 > 0 then
msgbox("du kanns nicht weniger Taler besitzen")
Else
Label3 -= 50
End If
12/31/2010 20:13 KingZuck#5
glaube man muss >= nicht > oder?

sorry wenn ich mich irre..
12/31/2010 23:15 c01nsk1llz#6
Weiß ich nicht, falls ya. Konata's Code Funzt.
wenn ICH mich nicht irre, hab ich das aber auch schon ausprobiert..
Kann auch sein, dass man > sowie >= benutzen kann. :)
01/01/2011 08:55 Varken~#7
Quote:
Originally Posted by c01nsk1llz View Post
Weiß ich nicht, falls ya. Konata's Code Funzt.
wenn ICH mich nicht irre, hab ich das aber auch schon ausprobiert..
Kann auch sein, dass man > sowie >= benutzen kann. :)
Grundlagen: Operatoren, [Only registered and activated users can see links. Click Here To Register...]
01/01/2011 13:46 Konata-Chan#8
man kann > benutzen...
oder >=
> 0 bedeutet -0.0000000.....1 und weniger
>= 0 bedeutet 0 und weniger

> weniger als
>= weniger oder gleich

€dit:
würde dann das > durch >= lieber austauschen..
is besser
01/01/2011 14:37 Jeoni#9
Konata, du failst. Das 'weniger als' ist < und das 'größer als'-Zeichen >.
Demnach müsste der Code auch so gehen:
Code:
If Label3 - 50 < 0 then
msgbox("Du kannst nicht weniger Taler besitzen!")
Else
Label3 -= 50
End If
01/02/2011 14:12 Algaten™#10
Hier mal eine Lösung:

Code:
  
Dim Geld As String
        Dim Kosten As String

If ComboBox1.SelectedItem = "5a" Then

        Geld = Label3.Text
        Kosten = 50
        Geld = Val(Geld) - Val(Kosten)

        If Geld < 0 Then
            MsgBox("Du kannst nicht weniger als 0 Taler besitzen")
        Else
            Label3.Text = Geld
        End If
End If
Dieser Code ist sehr Praktisch aber auch Knapp gehalten
01/02/2011 14:35 nkkk#11
man kann das auch über das "TextChanged" event machen, das hat den Vorteil, dass auch andere methoden den "wert" des Labes nicht unter null setzen können.