![]() |
Eingegebene Char`s in Array speichern
Guten Tag! Ich benötige Hilfe bei einem Programm.
Ich habe ein Programm geschrieben, das ein Wortratespiel simuliert. Hierbei wird ein Wort eingegeben, die Einzelnen Buchstaben verschlüsselt und in einem 2. Feld ausgegeben(Beispielsweise: In Edit2.Text würde dann erscheinen für 'der' dann '???' erscheinen). In einem 3. Feld wird dann der geratene Buchstabe eingegeben. Ist dieser Richtig, wird das Zeichen(in diesem Falle '?') durch den richtigen Buchstaben ersetzt. Ist dieser Falsch, wird die Fehleranzahl angezeigt. Jetzt möchte ich die falschen Buchstaben in einem Array of char speichern und in einem 5.Feld(Label5.Caption) diese Buchstaben anzeigen lassen(nach der Form Label5.Caption:='Falsche Buchstaben: '+b[1]+' '+b[2]+' '; usw.). Kann mir jemand helfen, wie ich das ganze umsetze? Vielen Dank im Vorraus! :-D |
AW: Eingegebene Char`s in Array speichern
Im Prinzip müsste dein Programm so aussehen. Ich hoffe dir ist klar an welcher Stelle du "TuWasMitBuchstabe()" in deinem Projekt aufrufen musst.
Delphi-Quellcode:
type
TForm1 = class(TForm) {...} private FRichtigerText: string; FMaskierteText: string; FFalscheBuchstaben: string; function IstBuchstabeInText(AValue: Char; const AText: string): Boolean; function IstBuchstabeRichtig(AValue: Char): Boolean; procedure TuWasMitBuchstabe(AValue: Char); procedure TuWasMitBuchstabeRichtig(AValue: Char); procedure TuWasMitBuchstabeFalsch(AValue: Char); procedure BuchstabenAnzeigen; end; function TForm1.IstBuchstabeInText(AValue: Char; const AText: string): Boolean; begin Result := (Pos(AValue, AText) <> 0); end; function TForm1.IstBuchstabeRichtig(AValue: Char): Boolean; begin Result := IstBuchstabeInText(AValue, FRichtigerText); end; procedure TForm1.TuWasMitBuchstabe(AValue: Char); begin if IstBuchstabeRichtig(AValue) then TuWasMitBuchstabeRichtig(AValue) else TuWasMitBuchstabeFalsch(AValue); end; procedure TForm1.TuWasMitBuchstabeRichtig(AValue: Char); begin {...} BuchstabenAnzeigen; end; procedure TForm1.TuWasMitBuchstabeFalsch(AValue: Char); begin if not IstBuchstabeInText(AValue, FFalscheBuchstaben) then begin FFalscheBuchstaben := FFalscheBuchstaben + AValue; BuchstabenAnzeigen; end; end; procedure TForm1.BuchstabenAnzeigen; begin LabelAnzeige.Caption := FMaskierteText; Label5.Caption := Format('Falsche Buchstaben: %s', [FFalscheBuchstaben]); // Label5 einen vernünftigen Namen geben! end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:49 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz