Hallo zusammen,
ich schraube gerade an einer kleinen Erweiterung eines TPopupmenu. Sie soll dazu dienen, Textbausteine zur Verfügung zu stellen. Eigentlich ist soweit alles fertig. Das Popupmenu kann so ziemlich allen editierbaren Komponenten zugewiesen werden, und legt nach Auswahl seinen Textbaustein an Cursorposition ab. Wenn man es denn per Maus bedient.
Nun also die Frage: Wie bekomme ich es hin, daß die Komponente auf einen (beliebigen, konfigurierbaren) Shortcut zum öffnen dieses Popups reagiert? Ich weiss, daß es dazu eine Taste auf 99% aller Win-Keyboards gibt. Ich hätte halt gerne die Möglichkeit (weil unsere Anwender es so gewohnt sind) Ctrl+T zum Öffnen des Menüs zu drücken. Bisher müsste das über das KeyDown-Ereignis der "Mutterkomponente" geregelt werden. Also so:
Delphi-Quellcode:
if (ssctrl in Shift) and (Key = ord('T')) then
begin
MeinPunkt.X := 0;
MeinPunkt.Y := 0;
GetCaretPos(MeinPunkt);
// Popup-Menü anzeigen
SendMessage(TWinControl(Sender).Handle, WM_RBUTTONDOWN, 0, 0);
SendMessage(TWinControl(Sender).Handle, WM_RBUTTONUP, wparam(MK_RBUTTON), MakeLong(MeinPunkt.x, MeinPunkt.y));
end;
Wäre schön, wenn man das künftig in die Komponente packen könnte.
Grüßle.
Sherlock