Hallo,
ich schreibe gerade an einem Programm, dass in einem Editfeld Zufallszahlen ausgibt. Nach 5 Sekunden verschwindet das Editfeld und der Spieler muss in ein anderes Editfeld die ausgegebene Zahl Eintippen und auf Fertig klicken. Das Programm kontrolliert ob EditAusgabe=Edit1. Sollte die Eingabe nicht stimmen, möchte ich, dass dem Spieler im LabelAusgabe angezeigt wird: Du hast noch y Leben. Dies habe ich wie folgt programmiert:
Delphi-Quellcode:
procedure TForm1.Timer2Timer(Sender: TObject);
begin
if y=0 then
begin
LabelAusgabe.Text := 'Verloren! Keine Leben mehr!' ;
ButtonGo.Text := 'Nochmal spielen' ;
Timer2.Enabled := false;
EditAusgabe.Text := '';
end
else
begin
y:= y-1 ;
Timer2.Enabled:= false;
InttoStr (y);
LabelAusgabe.Text:= 'Du hast noch' + y + 'Leben'
end;
end;
y hab ich als globale Variable definiert mit y: integer=3;
Wenn ich versuche das Programm abspielen zu lassen wird mir der Fehler angezeigt, das in der Zeile
LabelAusgabe.Text:= 'Du hast noch' + y + 'Leben'
Inkompatible Typen 'String' und 'Integer' vorkommen. Aber ich habe y ja zuvor mit IntToStr in ein String umgewandelt und somit in dieser Zeile überhaupt kein Integer mehr..
Kann mir jemand sagen, wo das Problem ist, bzw. wie ich es beheben kann?
Vielen Dank!