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 Buchstaben verhindern! (https://www.delphipraxis.net/2562-buchstaben-verhindern.html)

Chriss 29. Jan 2003 16:54


Buchstaben verhindern!
 
Hi @ all!

Ich möchte gerne verhindern, dass ich in ein Edit Buchstaben schreiben kann. Entweder soll das überhaupt nicht funktionieren (= keine Reaktion beim tippen auf den Buchstaben) oder es soll eine Fehlermessage kommen!
Ich weiss, dass das bei Sql mit "Is not numeric" geht, aber bei Delphi?! kA

Kann mir jemand helfen!?

MadMason 29. Jan 2003 17:04

im OnKeyPress des ereignesses fragst du einfach ab, welcher buchstabe gedrückt wurde.
wenn der buchstabe nicht benuzt werden soll, weist du einfach
Delphi-Quellcode:
key:= nil;
zu.
du könntest auch mit einer maskedit arbeiten. wie das funktioniert weiß ich allerdings net so genau

Daniel B 29. Jan 2003 17:05

Hallo,

Delphi-Quellcode:
if not (Key in ['a'..'z', 'A'..'Z']) then
  Key := #0;
Das ganze schreibst Du im OnKeyPress des Edit-Feldes.

Grüsse, Daniel :hi:

Chriss 29. Jan 2003 17:14

Zitat:

Zitat von Daniel B
Hallo,

Delphi-Quellcode:
if not (Key in ['a'..'z', 'A'..'Z']) then
  Key := #0;
Das ganze schreibst Du im OnKeyPress des Edit-Feldes.

Grüsse, Daniel :hi:


damit kann ich aber immernoch buchstaben eingeben, oder sollte ich da mal statt
Zitat:

['a'..'z', 'A'..'Z']
['0'..'1', ','] reinschreiben?

Daniel B 29. Jan 2003 17:18

Zitat:

Zitat von Chriss
['0'..'1', ','] reinschreiben?

:wall: Ja natürlich. :wall: Ich hab genau das Gegenteil gemacht. :oops:
Und wenn dann eher 1..0! Und Dein ,.

Grüsse, Daniel :hi:

Tpercon 29. Jan 2003 17:45

Delphi-Quellcode:
If not(key in [#48..#57,#8])
 then key := #0;
Gruß

Chriss 29. Jan 2003 17:55

danke, das funktioniert super!

jonnybbg 29. Jan 2003 19:48

Delphi-Quellcode:
procedure TForm1.Edit1KeyPress(sender: TObject; var key: Char);
begin
  if not (key in [#8, #9, #48 .. #57]) then key:=#0;
end;

Hiermit kann man die Eingabe auf nur Zahlen beschränken. Die Tabulator und Entertaste wird auch noch frei gelassen.


mfg



:coder:

Tpercon 29. Jan 2003 20:24

Das ist ja genau die gleiche Lösung wie meine, mit dem Zusatz der Entertaste, nur was will man mit der Entertaste? Und #8 ist Return und nicht Tabulator!!!

Gruß

Daniel B 29. Jan 2003 20:28

Hi Thomas,
Zitat:

Zitat von Tpercon
Und #8 ist Return und nicht Tabulator!!!

Nennen wir es mal BackSpace, also Löschen. ;)

Grüsse, Daniel :hi:


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:42 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