Einzelnen Beitrag anzeigen

Thom

Registriert seit: 19. Mai 2006
570 Beiträge
 
Delphi XE3 Professional
 
#5

AW: Wenn TWebbrowser eingabe Shortcutaufruf ohne ALT

  Alt 17. Okt 2011, 19:01
Sorry: Das war ein Mißverständnis. Ich dachte, dieses Verhalten sei so von Dir gewollt.

Ja - das ist tatsächlich etwas merkwürdig. Das Problem tritt übrigens auch mit Delphi XE auf. Die Ursache liegt offenbar darin, daß in TCustomTabControl.CMDialogChar nicht getestet wird, ob die Alt-Taste betätigt ist, sondern darauf vertraut wird, daß sich Windows schon etwas dabei denkt, wenn es diese Nachricht sendet. Und genau das geht hier schief.

Ich habe mal etwas getestet und eine Lösung gefunden (funktioniert zumindest bei mir):
Delphi-Quellcode:
type
  TPageControl = class(ComCtrls.TPageControl)
  private
    procedure CMDialogChar(var Message: TCMDialogChar); message CM_DIALOGCHAR;
  end;

  TForm1 = class(TForm)
    PageControl1: TPageControl;
    [...]
  end;

procedure TPageControl.CMDialogChar(var Message: TCMDialogChar);
begin
  if GetKeyState(VK_MENU) and $8000<>0
    then inherited;
end;
Thomas Nitzschke
Google Maps mit Delphi
  Mit Zitat antworten Zitat