Edit Feld definieren
Guten Morgen,
kurze Frage zu der Edit Komponente. Die Caption des Feldes ist zu beginnt gefüllt mit 'Bitte eintragen!', bei EditClick wird alles markiert und bei KeyPress dürfen nur Zahlen kommen.
Delphi-Quellcode:
Problem an der Sache ist, dass es nur funktioniert, wenn ich direkt Zahlen eingebe.. wenn ich den Inhalt lösche macht er mit eine Fehlermeldung. Bei Edit.Clear macht er mir auch eine Fehlermeldung.
procedure TForm1.Edit1Change(Sender: TObject);
begin Wohnflaeche := StrtoFloat(Edit1.Text); end; procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin If not(key in [#48..#57,#8,#44]) then key :=#0; end; procedure TForm1.Edit1Click(Sender: TObject); begin Edit1.SelectAll ; end; Vermute weil ich einen String durch das löschen eintrage, was ich ja nicht darf? Jemand eine Lösung parat? Freundliche Grüße und schönes Wochenende |
AW: Edit Feld definieren
Du sagst jetzt nichts über deine Delphi-Version, aber in einem halbwegs aktuellem Delphi kannst du das mit den TEdit-Eigenschaften erreichen:
-> Die Caption des Feldes ist zu beginnt gefüllt mit 'Bitte eintragen!' Das 'Bitte eintragen!' muss in
Delphi-Quellcode:
anstatt
TextHint
Delphi-Quellcode:
.
Text
Delphi-Quellcode:
leer lassen.
Text
-> bei EditClick wird alles markiert
Delphi-Quellcode:
muss
AutoSelect
Delphi-Quellcode:
sein. Ist auch Standard.
True
-> bei KeyPress dürfen nur Zahlen kommen
Delphi-Quellcode:
auf
NumbersOnly
Delphi-Quellcode:
setzen.
True
Letzteres funktioniert nur mit ganzen Zahlen ohne Komma. Alternativ ginge auch ein
Delphi-Quellcode:
und eine entsprechende Eingabemaske.
TMaskEdit
|
AW: Edit Feld definieren
Ja klar, beim Löschen (und auch Clear) steht nur noch ein Leerstring drin und der lässt sich nunmal nicht in einen Float umwandeln.
PS: es gibt auch unzählige Möglichkeiten "ungültige" Zeichen dennoch einzutragen * DEL (rechts löschen), Erase (Links löschen), XCut (Ausschneiden) * Einfügen (Strg+V, Einfg, Kontextmenü) * uvm. TryStrToFloat StrToFloatDef ... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:53 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