Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Keypress erst nach Key ausführen (https://www.delphipraxis.net/101058-keypress-erst-nach-key-ausfuehren.html)

naudoc 7. Okt 2007 22:14


Keypress erst nach Key ausführen
 
Hallo,

ich habe folgendes Problem...
Ich möchte das Ereignis OnKeypress benutzen als Sucheinschränkung benutzen:

if pos(edit.text,X)>0 then ...

nun möchte ich aber, dass edit.text schon den Key enthält. Da ich mehrere eigene procedures aufrufen will fällt

if pos(edit.text+Key,X)>0 then ...

aus. Gibts ne möglichkeit, dass OnKeypress erstmal den Key "pressed" oder wie auch immer...?

Vielen Dank schonmal...

Dani 7. Okt 2007 22:25

Re: Keypress erst nach Key ausführen
 
Hi, vielleicht ist das OnChange Ereignis eher das, was du suchst.

DP-Maintenance 7. Okt 2007 22:28

DP-Maintenance
 
Dieses Thema wurde von "Matze" von "Object-Pascal / Delphi-Language" nach "VCL / WinForms / Controls" verschoben.

Progman 7. Okt 2007 22:34

Re: Keypress erst nach Key ausführen
 
TEdits haben u.a. die Ereignisse OnKeyDown, OnKeyPress, OnKeyUp.
Da sollte man ansetzen, denn da steht das Zeichen schon zur Verfügung und da kann man "Filtern".

Hansa 8. Okt 2007 00:15

Re: Keypress erst nach Key ausführen
 
Du hast nicht angegeben, was wo gemacht werden soll. Deshalb StringGrid :

Delphi-Quellcode:
procedure Tfrm.sgKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var ch : char;
begin
  if key = VK_F9 then begin
    frmSuch := TfrmSuch.Create(self);
..
    key := VK_RETURN;
    ch := chr (key);
    sgKeyPress(Sender,ch);
    key := ord (ch);
Vielleicht hat jemand besser polierte Glaskugel. 8)


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:06 Uhr.

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