AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein DBEdit mitteilen das Eingabe komplett
Thema durchsuchen
Ansicht
Themen-Optionen

DBEdit mitteilen das Eingabe komplett

Ein Thema von Hausmarke · begonnen am 13. Jan 2014 · letzter Beitrag vom 13. Jan 2014
 
Perlsau
(Gast)

n/a Beiträge
 
#4

AW: DBEdit mitteilen das Eingabe komplett

  Alt 13. Jan 2014, 14:50
Das Aufrufen der Methode die das Feld berechnet war nicht das Problem.
Hat ja auch keiner behauptet.

Vielmehr ist das Datenfeld zum Zeitpunkt der Berechnung leer, da das DBEdit die Eingabe noch nicht an das Datenfeld weitergeleitet hat. Hierbei sollte man erwähnen das die Berechnungsmethode im Datenmodul durch ein OnChange eines Datenfeldes ausgelöst wurde. Was jetzt jedoch durch das OnExit des DBEdits ausgelöst wird.
Meine DBEditfelder ändern ihre Farbe, sobald sie zur Eingabe bereit sind (Dataset.Edit) und wieder zurück, sobald die Eingabe beendet wurde (Dataset.Post).

Es geht doch offenbar darum, ein anwender- bzw. benutzerfreundliches Handling zu implementieren. Da halte ich es für etwas gewöhnungsbedürftig, eine Eingabe durch das Verlassen des Feldes abzuschließen: Der Anwender muß also irgendwo anders hinklicken, um seine Eingabe zu bestätigen und die Verarbeitung auszulösen. Dann könntest du ihm auch gleich einen Button präsentieren oder eben ganz auf diesen ganzen Firlefanz verzichten, das DBEdit beim Enter zur Eingabe vorbereiten (Dataset.Edit; DBEdit.ReadOnly := False; DBEdit.Color := clGreen; etc.) und beim Drücken der Entertaste die Eingabe auf Korrektheit überprüfen und gegebenfalls abschließen (Dataset.Post; DBEdit.ReadOnly := True; DBEdit.Color := clWhite; etc.). Ist die Eingabe nicht korrekt, machst du entweder ein Dataset.Cancel oder beläßt die Datenmenge im Editiermodus, wobei du dem Anwender natürlich seine Fehleingabe anzeigen mußt. Das wäre eine konkrete und begreifbare Vorgehensweise für den Anwender; dagegen ist "irgendwo hinklicken zu müssen" etwas vage und läßt manchen Anwender dann auch mal außerhalb des Formulars oder sonstwohin klicken, was zu Fehlverhalten der Anwendung führen könnte. Du kannst z.B. auch noch auf die Betätigung der ESC-Taste prüfen, womit der Anwender signalisieren kann, daß er die Eingabe abzubrechen wünscht. Beim Verlassen des Feldes ohne vorherige Bestätigung mit Enter verwirfst du die Eingabe (Dataset.Cancel).
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:15 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz