Einzelnen Beitrag anzeigen

Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#16
  Alt 13. Apr 2003, 12:11
sieht aus, als wärs das gewesen. Und nun das nächste:

Code:
procedure TRealEdit.KeyPress(var Key:Char);
var ZulZeichen : SET OF char;
begin
  inherited KeyPress(Key);
  if OnlyReals then begin
    ZulZeichen := ['0'..'9',#8];
    if pos (DecimalSeparator,text) = 0 THEN // kein . im RealEdit.text . zulassen
      ZulZeichen := ZulZeichen + [DecimalSeparator]
    else
      ZulZeichen := ZulZeichen - [DecimalSeparator]; // zweiten . verhindern
    if not (Key in ZulZeichen) then
      Key := #0
    else begin
      if length (text) = 3 then
        text := text + '.';
    end;
  end;
  end;
Man beachte die Zeile :
Code:
text := text + '.'
Testweise soll bei dem 3. Zeichen ein Tausenderpunkt kommen. So sollte es aussehen: 123.456 und das kommt dabei heraus : 456123. Der Punkt ist zwar gesetzt, aber die Eingabe beginnt danach vor der 1. Zuerst also 4123. dann 45123. usw. Sieht da jemand mehr als ich ?
Gruß
Hansa
  Mit Zitat antworten Zitat