Hallo zusammen,
Erstmal herzlichen Dank für eure Antworten.
Also, ich versuch's nochmal
Mein Form hat eine Listview und ein MainMenu.
Die Listview hat den Focus.
Jetzt drücke ich alt+d, gefolgt von n und stehe auf dem ersten Menüeintrag unter dem Menü neu.
Genau das gleiche, soll, passieren, wenn ich strg+n drücke - also nur zur Vereinfachung für den User - und weil's mich interessiert.
Da "neu" ein Untermenü hat, kann ich hier keinen Shortcut vergeben, sonst wer das Ganze schon erledigt.
Deshalb habe ich folgendes versucht:
Code:
procedure TMainForm.liEntries.KeyDown(Sender: TObject;
var Key: Word; Shift: TShiftState);
begin
if ((key = ord('N')) and
(ssCtrl in shift)) then
begin
// aufgerufen wird das Ganze, wenn man strg+n drückt - soweit, so gut.
keybd_event (vk_menu, 0, 0, 0);
keybd_event (vk_menu, 0, keyeventf_keyup, 0);
end;
inherited;
end;
Es, sollte, jetzt also das Menü aktiviert werden - es passiert aber schlicht nix.
*winsel!
Herzliche Grüße
Marco