Einzelnen Beitrag anzeigen

knightfire66

Registriert seit: 7. Nov 2013
Ort: Stuttgart
3 Beiträge
 
Delphi 7 Personal
 
#6

AW: Hilfe: Delphi Taschrechner

  Alt 24. Nov 2013, 16:26
Ein letztes mal noch die Lösung für welche, die das mal interessiert:

Und du brauchst die Komma-Abfrage noch mindestens ein drittest Mal.

- entweder du verbietest Funktionen ala Strg+V (Einfügen)
- oder du mußt auch beim Einfügen (egal auf welchem Wege) ungültige Dinge rauslöschen
- und/oder überall, wo danach nochmal gerechnet wird, muß ebenfalls nochmals auf ungültige Zeichen geprüft werden
Am Ende habe ich doch den Vorschlag von himitsu genommen (danke nochmal)...
so siehts nun aus und funktioniert einwandfrei:

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin
if not (Edit1.Text= '') then begin
if not (pos(',', Edit1.Text)<> 0) then
Edit1.Text:= Edit1.Text+ ',';
end;
end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if (Edit1.Text = '') and (Key in [',']) then
    Key := #0;
if not (Key in ['0'..'9',',', #8]) then
    Key := #0;
if (key = ',') and (pos(',',(sender as TEdit).text) >0)then
  key := #0;
end;
end.
Geschlossen!
  Mit Zitat antworten Zitat