Einzelnen Beitrag anzeigen

Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#11

Re: Im OnKeyDown Taste abfangen

  Alt 15. Aug 2005, 17:40
Hi Matze,

ich hab hier eine Lösung, ist IMHO auch nicht die Beste, finde ich aber schöner wie deine

Du brauchst auf deiner Form ein TApplicationEvents.

Danach ein Variable:

IsShift: Boolean; Im OnCreate stellst du die Variable auf false.

Danach machst du im OnKeyDown deiner Form (vorausgesetzt KeyPreview ist auf true):

IsShift := ssShift in Shift; Danach brauchst du noch das OnMessage des TApplicationEvents:

Delphi-Quellcode:
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
  var Handled: Boolean);
begin
  if Msg.message = WM_KEYDOWN then
  begin
    if (Msg.wParam = VK_SPACE) and (IsShift) then
    begin
      SynEdit1.Lines.Add('Blubb');
      Handled := true;
    end;
  end;
end;
Wie gesagt, ist zwar nicht beste Lösung, aber besser wie deine
  Mit Zitat antworten Zitat