Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Abfrage ob Editfeld Integer ist (https://www.delphipraxis.net/156832-abfrage-ob-editfeld-integer-ist.html)

raysto 16. Dez 2010 13:54

Abfrage ob Editfeld Integer ist
 
Hallo,
für ein Testauswertungsprogramm brauche ich hilfe, da ich abfragen muss, ob ein Text in einem Editfeld Integer ist.
Danke

Win32.API 16. Dez 2010 13:55

AW: Abfrage ob Editfeld Integer ist
 
Schau dir mal die Funktion Delphi-Referenz durchsuchenTryStrToInt an.

DeddyH 16. Dez 2010 13:56

AW: Abfrage ob Editfeld Integer ist
 
[klugscheiß] Ein Text in einem Editfeld ist immer String, die Frage ist eher, ob er sich in einen Integer wandeln lässt :mrgreen: [/klugscheiß]
Ich würde es mit Delphi-Referenz durchsuchenTryStrToInt oder Delphi-Referenz durchsuchenVal versuchen.

Deep-Sea 16. Dez 2010 14:02

AW: Abfrage ob Editfeld Integer ist
 
Außer in das Editfeld sollen ausschließlich Zahlen eingegeben werden dürfen. Dann bietet sich ein SpinEdit oder MaskEdit wohl eher an.

(DeddyH: Nicht nur du kannst klugscheißen ^^)

raysto 16. Dez 2010 14:05

AW: Abfrage ob Editfeld Integer ist
 
@deep-sea
ja genau, perfekt geklugscheist, könntest du mir jetzt nur noch sagen wie ich das machen soll ;) Sonst danke :D

Deep-Sea 16. Dez 2010 14:12

AW: Abfrage ob Editfeld Integer ist
 
Du suchst in deiner Komponentenliste eine Komponente mit dem Namen TSpinEdit (oder TJvSpinEdit, falls man die JEDIs mehr mag) oder eben TMaskEdit und "klatscht" sie auf seine Form :wink: Für ganze Zahlen ohne Besonderheiten ist wohl TSpinEdit erst einmal das einfachste. Das hat natürlichen keine Eigenschaft "Text" mehr, sondern "Value". Des weiteren sind die Eigenschaften MinValue und MaxValue besonders zu erwähnen.

DeddyH 16. Dez 2010 14:16

AW: Abfrage ob Editfeld Integer ist
 
Zitat:

Zitat von Deep-Sea
Außer in das Editfeld sollen ausschließlich Zahlen eingegeben werden dürfen.

Und selbst dann ist es immer noch ein String :tongue:
Man könnte aber auch den ES_NUMBER-Style des Edits setzen.
Delphi-Quellcode:
SetWindowLong(Edit.Handle, GWL_STYLE, GetWindowLong(Edit.Handle, GWL_STYLE) or ES_NUMBER);

shmia 16. Dez 2010 14:36

AW: Abfrage ob Editfeld Integer ist
 
Zitat:

Zitat von Deep-Sea (Beitrag 1068897)
Außer in das Editfeld sollen ausschließlich Zahlen eingegeben werden dürfen. Dann bietet sich ein SpinEdit oder MaskEdit wohl eher an.

Das kommt drauf an.
Wenn es sich um Daten handelt, die gerne über das Clipboard kopiert werden, dann ist eine Beschränkung auf Ziffern eher störend.
Beispiel:
Manche Formulare haben zwei Felder für Telefonvorwahl und Telefonnr.
Der Benutzer kopiert eine Handynummer inklusive Sonderzeichen aus einem anderen Dokument, schliest das Dokument und möchte dann einfügen.
Wenn die Zielfelder keine Restriktionen haben, dann kann er die Gesamtnummer in beide Felder einfügen und löscht dann das, was nicht reingehört.
Wenn die Zielfelder aber in Länge und Zeichen hart begrenzt sind, dann wird es für den Benutzer sehr umständlich.
Notfalls muss er sogar ein Notepad öffnen, die Gesamtnummer einfügen nur um Vorwahl und Telefonnr getrennt zu kopieren.

===> lieber nicht zu viele Restriktionen auf Eingabefelder legen und stattdessen die Daten bei der Übernahme konsolidieren/prüfen.

Deep-Sea 16. Dez 2010 14:41

AW: Abfrage ob Editfeld Integer ist
 
Darum sagte ich ja auch "Zahlen". Eine Telefonnummer besteht zwar aus Ziffern, aber eine Zahl ist es wohl kaum.
Klar muss man immer abwägen, was man tun möchte...

raysto 16. Dez 2010 14:52

AW: Abfrage ob Editfeld Integer ist
 
es gibt leider kein TspinEdit, und das Mask -Edit verstehe ich nicht, sry


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:10 Uhr.
Seite 1 von 2  1 2      

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