Forum: Win32/Win64 API (native code)
Delphi
by Matze,
14. Jan 2006
Äh, hm danke.
Ich glaube fast, dass das bei mir irgendwo anders liegen muss, aber ich sehe mir das mit der ActionList einmal näher an. Sonst bleibe ich bei meinem Code, der ja auch funktioniert.
Forum: Win32/Win64 API (native code)
Delphi
by Matze,
14. Jan 2006
Hallo marabu,
danke, doch dein Code-Snipsel funktioniert bei mir nicht. Da wird das Menü nie angesprochen, darum sende ich die Nachricht mit PostMessage, damit das Menü wieder angesprochen wird. In meiner Anwendung wertde ich Alt + A im OnKeyDown eines Memos aus, daher geht das mit der ActionList auch nicht, es darf nicht Formularweit gelten.
Wie gesagt, mit PostMessage geht es. :gruebel:
Forum: Win32/Win64 API (native code)
Delphi
by Matze,
13. Jan 2006
Hallo marabu :hi:
Ich habe dir eine kleine Testanwendung erstellt. Labels beschreiben ungefähr, was ich meine. Ich hoffe, es ist einigermaßen verständlich.
Nachtrag: Huch, hier geht es sogar, ohne das PostMessage. Sehr komisch.
Forum: Win32/Win64 API (native code)
Delphi
by Matze,
13. Jan 2006
Hallo marabu
Ich habe in meinem Programm den Shortcut Alt + A verwendet. Da kein Menüitem mit A angesprochen werden kann, ertönt dieser nervende Piepton, den ich durch das Abfangen von MENUCHAR unterdrücken lasse. Doch fange ich dadurch ja alle Shortcuts ab, die an das MainMenu gesendet werden. Daher muss ich im Falle, dass ein Shortcut nicht Alt + A ist, diesen wieder an das Menü...
Forum: Win32/Win64 API (native code)
Delphi
by Matze,
12. Jan 2006
Moin
Äh, dass es genau so nicht geht, weiß ich schon. :zwinker:
Geht es in der Art dann komplett nicht? Wie löst man das Problem dann?
Nachtrag: Mit PostMessage würde es klappen:
Forum: Win32/Win64 API (native code)
Delphi
by Matze,
12. Jan 2006
Hallo marabu,
und was heißt das nun genau?
Forum: Win32/Win64 API (native code)
Delphi
by Matze,
11. Jan 2006
Hallo,
Wenn ich eine Nachricht abfange, und zwar so:
procedure TFormMain.WMMENUCHAR(var Msg: TMessage);
begin
inherited;
if msg.WParamLo = ord('a') then // Catch Alt + a
begin