Ich habe auf einer Form eine große Menge von Actions - manche direkt in der Form definiert, manche auf Frames, die dynamisch instantiiert werden, usw.usf. Dabei gibt es doppelte ShortCuts - z.B. könnte die Form eine Aktion mit Strg+S definieren und ein gerade aktiver Frame ebenso. Drückt der Benutzer jetzt Strg+S, so sucht die
VCL den ShortCut in den vorhandenen Aktionen in einer fixen Reihenfolge (Erstelllungsreihenfolge?).
Ich hätte es gerne kontextsensitiv: Wenn der Frame aktiv ist, soll "seine" Aktion ausgelöst werden, anderenfalls die der Form. Meine Lösung besteht momentan darin, in den relevanten Eventhandlern alle Aktionen durchzunudeln und bei allen gerade uninteressanten Aktionen den ShortCut auf 0 zu setzen, wenn es eine Kollision gibt. Das wird aber auf Dauer ziemlich verwickelt. Kennt ihr da eine schönere Lösung - etwa die gerade relevanten ActionLists nach "vorne" zu schieben?