Einzelnen Beitrag anzeigen

Benutzerbild von Dani
Dani

Registriert seit: 19. Jan 2003
732 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Edit eingabe begrenzen (nur EIN Komma)

  Alt 9. Okt 2004, 01:21
Hi,

da fällt mir nur eine Schleife durch alle Zeichen ein :-/

Delphi-Quellcode:
procedure TForm1.Edit1Change(Sender: TObject);
var i, count: Integer;
    s: String;
begin
 count := 0;
 s := Edit1.Text;
 for i:=Length(s) downto 1 do
  begin
   If s[i] = ',then
    begin
     inc(count);
     If count > 1 then
      Delete(s, i, 1);
    end;
  end;
 
 If count > 1 then
  begin
   Edit1.Text := s;
   Edit1.SelStart := MaxInt;
  end;
end;
Edit: Luckies Methode klingt eleganter allerdings würde ich statt einer boolschen Variable die Eigenschaft TEdit.Tag benutzen. Was dann noch bleibt, ist das Problem, wenn der User per Copy&Paste einen falschen Wert einfügt...
Dani H.
At Least I Can Say I Tried
  Mit Zitat antworten Zitat