AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Eingabe Zeichen für Zeichen auswerten

Ein Thema von Bernasconi · begonnen am 23. Nov 2005 · letzter Beitrag vom 23. Nov 2005
Antwort Antwort
Bernasconi

Registriert seit: 23. Nov 2005
Ort: Luzern
2 Beiträge
 
Delphi 7 Enterprise
 
#1

Eingabe Zeichen für Zeichen auswerten

  Alt 23. Nov 2005, 15:03
Hallo

Ich bin recht neu in Sachen Delphi und stosse jetzt schon auf mein erstes Problem. Ich suche nach einer Möglichkeit eine Eingabe in ein Editfeld Zeichen für Zeichen mit einer Konstante abzugleichen. Wenn die Eingabe nicht der Konstante entspricht, soll das falsche Zeichen angegeben werden. (ähnlich wie bei einem Rechtschreibeduden )

Ich würde mich freuen, wenn mir jemand weiterhelfen könnte. Herzlichen Dank

Freundliche Grüsse
Bernasconi
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#2

Re: Eingabe Zeichen für Zeichen auswerten

  Alt 23. Nov 2005, 15:12
Hi und willkommen in der DP.

Du hast auf deiner Form ein Editfeld und möchtest die Eingabe in diesem Feld auswerten ?
Nach jeder Eingabe eines Zeichens oder nach drücken auf einen Knopf (Button)?
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat
rochus

Registriert seit: 23. Dez 2004
Ort: Dornstadt
30 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Eingabe Zeichen für Zeichen auswerten

  Alt 23. Nov 2005, 15:16
Delphi-Quellcode:
const
  MeineKonstante = 'IrgendeinText'
var
  i: Integer;
begin
  for i:=0 to Length(strBenutzerEingabe)-1 do begin
    if i>(Length(MeineKonstante)-1) then
    begin
      ShowMessage('Die Benutzereingabe ist kürzer als die Konstante');
    end
    else
      if strBenutzerEingabe[i] <> MeineKonstante[i] then begin
        ShowMessage('Die Stelle ' + IntToStr(i) + ' unterscheidet sich');
        Exit;
      end;
  end;
end;
Nicolai Waniek
Im Nachhinein ist man immer ein Schlauch!
"Dream as if you'll live forever, live as if you'll die today!" James Dean
  Mit Zitat antworten Zitat
ichbins

Registriert seit: 9. Jul 2005
Ort: Hohenaltheim
1.001 Beiträge
 
Delphi 2005 Personal
 
#4

Re: Eingabe Zeichen für Zeichen auswerten

  Alt 23. Nov 2005, 15:21
@Rochus: Stimmt nicht ganz. Benutzereingabe: 'TEXT000000' konstante: 'TEXT' -> gleich
Delphi-Quellcode:
const
  MeineKonstante = 'IrgendeinText'
var
  i: Integer;
begin
  if length(meinekonstante)<length(strbenutzereingabe) then
    ShowMessage('Die Benutzereingabe ist länger als die Konstante');
  for i:=0 to Length(strBenutzerEingabe)-1 do
    if i>(Length(MeineKonstante)-1) then begin
      ShowMessage('Die Benutzereingabe ist kürzer als die Konstante');
      break; //abbrechen wenn ein fehler gekommen ist
    end
    else
      if strBenutzerEingabe[i] <> MeineKonstante[i] then begin
        ShowMessage('Die Stelle ' + IntToStr(i) + ' unterscheidet sich');
        Exit;
      end;
end;
außerdem kannst du ein paar begin/end dinger weglassen
Michael Enßlin
Ich, der ich weiß, mir einzubilden, dass ich weiß, nichts zu wissen, weiß, dass ich nichts weiß.
Sokrates
  Mit Zitat antworten Zitat
Bernasconi

Registriert seit: 23. Nov 2005
Ort: Luzern
2 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Eingabe Zeichen für Zeichen auswerten

  Alt 23. Nov 2005, 15:25
Ja genau:
Ein Form auf dem Folgende Elemente liegen:
Editfeld
Button für Auswertung
Button für Löschen

Wenn ich im Editfeld eine Zeile geschrieben habe, klicke ich danach auf den auswerten Button.

Wenn ich darauf klicke, soll der Text kontrolliert werden, wie bei einem Rechtschreibeduden. Es sollen nur die einzelnen Zeichen die falsch sind herausgefiltert werden.

Ein Beispiel:
Verlagt wird folgende Zeichenkette. "Ich bin Franz aus den Bergen."
Wenn jetzt "Ivh bin Franz aus den Bergen." eigegeben wird, dann möchte ich folgendes Ergebnis haben: Ich möchte dass der falsche Buchstaben zum Beispiel fett dargestellt wird. Das ist ja eher einfach, einfach muss ich irgendwie einische Schlaufe aufbauen, die jedes Zeichen einzeln abgleicht und dann entscheidet wie es dargestellt werden soll. Wie mache ich sowas?

Ich hoffe ich konnte mich einigermassen Verständlich ausdrücken!
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#6

Re: Eingabe Zeichen für Zeichen auswerten

  Alt 23. Nov 2005, 15:34
Zitat von ichbins:
außerdem kannst du ein paar begin/end dinger weglassen
Bloss nicht! Es gehört zum guten Programmierstil (siehe sämtliche Werke zu dem Thema) Blöcke immer in begin end;, {} oder was auch immer zu setzen. Auch wenn es ohne genau so gut klappt und sicherlich einige Menschen anderer Ansicht sein dürften. Es hilft einfach genau zu sehen bis wohin ein Block geht, aber auch Fehler vermeiden. So mag es einem klar sein, dass nur die folgende Zeile abgearbeitet wird, aber wenn eine zweite Zeile hinzugefügt wird, kann man das Hinzufügen leicht vergessen (und bei schlechter Codeformatierung ist ohne begin end noch weniger klar wie lang der block geht).

Gut, jetzt ist es so eine Sache ob jmd. den Code schlecht formatiert, aber sich an begin und end hält, aber zu gutem Stil gehört beides.

Gruß Der Unwissende
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz