alles klar.. danke erstmal.. werd dann gleich mal probieren..
und das hier F := F + 1 div 6; hatte ich in irgendnem anderen beitrag (nicht von hier..) gefunden, und habs damit auch versucht.. habs wohl vergessen zu löschen..
EDIT: habs jetzt so ausprobiert, aber es funzt leider net.. bist du dir sicher dass das so richtig ist? jetzt schreibt er mir die buchstaben nicht mehr ins wort und die fehleranzeige läuft auch verrückt..
EDIT2: habs jetzt so verändert, aber das mit dem f klappt immer noch net. wenn ich auf einen buchstaben habe, der nicht im wort vorhanden ist, zeigt er mir bei f nichts an. das mit pos müsste doch richtig sein, oder? der gibts ja, wenn nichts gefunden wird, eine null zurück.. wenigstens zeigt er jetzt die buchstaben an..
Delphi-Quellcode:
procedure TForm1.btErgebnisClick(Sender: TObject);
var j:Integer;
begin
Labelcaption:=lbLoesung.Caption;
if Pos(Buchstabe, GesuchtesWort) > 0 then
for j:= 1 to length (GesuchtesWort) do
if GesuchtesWort[j] = Buchstabe then
begin
Labelcaption:=lbLoesung.Caption;
delete(Labelcaption,j,1);
Insert(GesuchtesWort[j], Labelcaption, j);
lbLoesung.Caption:=Labelcaption;
end
else if Pos(Buchstabe, GesuchtesWort) = 0 then
begin
F:=F+ 1;
edFehler.Text:=FloatToStr(F);
end;
if F>=11
then showmessage('Du hast verloren!');
if Labelcaption=GesuchtesWort
then showmessage('Du hast gewonnen!')
end;