2009-04-09 12 views
4

J'utilise l'événement TApplicationEvents OnShortCut pour obtenir des raccourcis clavier d'application dans un programme Delphi.Delphi - Utilisation de l'événement TApplicationEvents OnShortCut pour détecter les touches Alt + C

En utilisant le code suivant:

procedure TForm1.ApplicationEvents1ShortCut(var Msg: TWMKey; var Handled: Boolean) ; 
begin 
    if (Msg.CharCode = VK_F9) then 
    begin 
    ShowMessage('F9 pressed!') ; 
    Handled := True; 
    end; 
end; 

Question:

Comment détecter quand 'ALT C' a été appuyé?

Répondre

7

comme ceci:

procedure TForm1.ApplicationEvents1ShortCut(var Msg: TWMKey; 
    var Handled: Boolean); 
begin 
    if (Msg.CharCode = Ord('C')) 
    and (HiWord(Msg.KeyData) and KF_ALTDOWN <> 0) 
    then begin 
    ShowMessage('Alt+C pressed!') ; 
    Handled := TRUE; 
    end; 
end; 

S'il vous plaît noter que l'utilisation Alt et une touche est seulement un mauvais choix pour un raccourci, que le système utilise pour activer les éléments du menu ou des commandes de dialogue.

+0

mon doux Delphi :) damn tous java ... (je suis juste actuellement très en colère contre le monde de Java) –

1

Ou vous pouvez créer TAction simple, ils mangent des raccourcis avant les autres.

Questions connexes