![]() |
Edit-Feld nur Zahlen erlauben
Hi!
Ich hab ein Edit nonVCL und möchte im prinzip folgenden code realisieren:
Delphi-Quellcode:
wie mach ich das jetzt nonvcl?
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin if not (key in [#8,#48..#57]) then key:=#0; end wenn ich mit meiner wndproc WM_KEYDOWN abfrage, springt das nur an, wenn der focus aufm fenster ist und nicht, wenn der focus im edit ist, bzw. das edit aktiv ist. stefan |
Re: Edit-Feld nur Zahlen erlauben
Hi,
du musst die WM_KEYDOWN-Message des Edits verarbeiten. Das Stichwort hierzu heißt Subclassing. Dazu findest du Informationen in Luckies Tutorials und im PSDK. |
Re: Edit-Feld nur Zahlen erlauben
Hi,
oder benutze den Stil ES_NUMBER
Delphi-Quellcode:
Edit1Handle ist dann durch das Handle des Edits zu ersetzen.
SetWindowLong(Edit1Handle, GWL_STYLE, GetWindowLong(Edit1Handle,
GWL_STYLE) or ES_NUMBER); mfG mirage228 |
Re: Edit-Feld nur Zahlen erlauben
danke! Ich hab das ES_NUMBER einfach in das dwStyle von createwindowex genommen! funzt perfekt!
ABer des mit dem Subclassing werd ich mir auf jeden fall trotzdem anschauen! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:38 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