TNumericEdit

Zur Vorstellung von Komponenten und Units für Lazarus
Antworten
Eclipticon
Beiträge: 292
Registriert: Sa 5. Feb 2011, 20:38
OS, Lazarus, FPC: Windows XP VirtualBox (FPC 2.6.4, Laz 1.2.4)
CPU-Target: 32Bit
Wohnort: Wien

TNumericEdit

Beitrag von Eclipticon »

Hi,

ich wollte Euch kurz eine gerade zusammengebastelte Komponente vorstellen und Euch um Feedback ueber den Code bitten. Wie der Name TNumericEdit schon impliziert, handelt es sich um ein Edit-Feld ausschliesslich fuer numerische Werte. Andere Eingaben werden nicht akzeptiert.

Folgende neue Eigenschaften sind von Bedeutung:

  1. AllowNegative: Ist auch die Eingabe negativer Zahlen erlaubt?
  2. AllowFloatingPoint: Ist auch die Eingabe von Dezimalzahlen erlaubt?
  3. FloatFormat: Ein Formatstring fuer die initiale Ausgabe von Dezimalzahlen
  4. IntegerValue: Wert des Felds als Integer, gerundet wenn AllowFloatingPoint
  5. FloatValue: Wert des Felds als Dezimalzahl

Fuer eine entsprechende Exceptionbehandlung beim Aufruf von IntegerValue und FloatValue sollte der aufrufende Code sorgen.

Ungeloest ist bisher die Notwendigkeit, .Text bei jeder Aenderung zu ueberpruefen. Bestimmte Sabotageakte (z.B. Loeschen aller Zahlen mit <Del>) kann ich mit KeyPress() leider nicht abfangen ...

Ich bin neugierig auf Euren Input!
Dateianhänge
numericedit.pas
(5.8 KiB) 101-mal heruntergeladen

Maik81ftl
Beiträge: 619
Registriert: Mi 9. Mär 2011, 16:34
OS, Lazarus, FPC: Ubuntu10.04 LTS (L 0.9.31.0 FPC 2.4.4)
CPU-Target: 64Bit
Wohnort: seit 01.06.2011 in Wahlstedt

Re: TNumericEdit

Beitrag von Maik81ftl »

schau ich mir auf jeden mir an, lazarus bei mir wieder Normal läuft.
Ubuntu 10.04 LTS ist meine Heimat. Lazarus ist meine Sprache :D und der Kreis Segeberg meine LIEBE :D

u-boot
Beiträge: 306
Registriert: Do 9. Apr 2009, 10:10
OS, Lazarus, FPC: Ubuntu 9.10 (L 0.9.28 FPC 2.2.4)
CPU-Target: 32Bit
Wohnort: 785..

Re: TNumericEdit

Beitrag von u-boot »

Ist sicher ne schöne Übung. Wo ist aber der Vorteil gegenüber SpinEdit/FloatspinEdit ?
Ubuntu 9.10 (L 0.9.28 FPC 2.4.x)

Eclipticon
Beiträge: 292
Registriert: Sa 5. Feb 2011, 20:38
OS, Lazarus, FPC: Windows XP VirtualBox (FPC 2.6.4, Laz 1.2.4)
CPU-Target: 32Bit
Wohnort: Wien

Re: TNumericEdit

Beitrag von Eclipticon »

Abgesehen von der Uebung:

  1. Das Fehlen der spin controls, die in diesem Projekt bereits ganz anders implementiert habe und die hier daher total ueberfluessig sind.
  2. Dass ich in der finalen Version hoffenlich Eingaben wie "0-----," verhindern werde ;-)

Antworten