Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#9

AW: ShortCuts und nicht modale Fenster

  Alt 14. Jun 2022, 12:44
Delphi-Quellcode:
constructor TForm2.Create;
begin
  inherited Create(Application.MainForm);

  // ...
end;
Da haben wir schon den Übeltäter! Übergib mal statt Application.MainForm nur Application. Das sollte dann schon funktionieren.

Ursache: In Delphi 5 werden bei in IsShortCut nur die ActionLists des Forms abgefragt, während bei Delphi 11 (und zig Versionen davor) rekursiv alle Components und deren ActionLists abgeklappert werden (ergibt bei Frames auch Sinn). Da hier die TForm2 & Co. Instanzen eine dieser Components des MainForm ist, nehmen auch deren ActionLists an der ShortCut-Verlosung teil. Dabei gewinnt dann eben das als erstes erzeugte Form.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat