Autor Beitrag
Tower
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 99



BeitragVerfasst: Fr 16.01.04 15:06 
Hallo!

Ich habe hier ein merkwürdiges Phänomen:

Ich habe eine Komponente entwickelt (Nachfahre von TDBEdit), in der ich den Hotkey ALT+'+' (also ALT-Taste zusammen mit der PLUS-Taste) benutzen möchte.
Also frage ich ihn im KeyDown-Ereignis ab, und löse die Aktion aus, was an sich auch richtig funktioniert.

Das Problem dabei: Danach ist der Focus weg! Stattdessen ist er offenbar im Hauptmenü, denn wenn ich dann einen der dort unterstrichenen Hotkeys drücke, öffnet sich das entsprechende Menü.

Aber: Da WILL ich ihn nicht. :)

Leider scheitern bisher auch sämtliche Versuche, mit SetFocus u.ä. den Focus wieder in die Komponente zu bekommen.

Hat jemand eine Ahnung, wie ich das mache bzw. von vornherein verhindere, dass er verschwindet?

Danke schonmal!
MrSaint
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1033
Erhaltene Danke: 1

WinXP Pro SP2
Delphi 6 Prof.
BeitragVerfasst: Fr 16.01.04 21:56 
hmmmm... also das liegt wohl an deinem ALT! Weil wenn du z.B. im Explorer ALT drückst, landest du auch oben im MainMenu... Also entweder du machst dein ALT+'+' zu nem STRG+'+' oder wir bekommen es anders hin... wie hast du denn versucht, den Focus wieder zurückzusetzen (Code?)?




MrSaint

_________________
"people knew how to write small, efficient programs [...], a skill that has subsequently been lost"
Andrew S. Tanenbaum - Modern Operating Systems
Tower Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 99



BeitragVerfasst: Mo 19.01.04 10:45 
Leider muss ich beim ALT bleiben (Firmenvorgabe).

Ich hab an verschiedenen Stellen versucht, den Focus per

ausblenden Quelltext
1:
Ctrl.SetFocus;					


wieder zurück zu setzen. ZB direkt nachdem die Aktion durch den Hotkey ausgelöst wurde (also im KeyDown-Ereignis) oder auch im OnEnterMenuLoop-Ereignis des MainMenus... nützt aber alles nix. :?
(In "Ctrl" hatte ich das Control gespeichert, das den Focus hatte.)

Achso, vielleicht ist das ja wichtig: Das Hauptmenü ist eine TActionMainMenuBar, keine normale!
georg74
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Sa 02.04.05 15:18 
ein Jahr alt ... hast Du eine Lösung gefunden?

Das problem ist Fehldesign bzw. Fehler im TActionMainMenuBar.
Suche nach TActionMainMenuBar im Forum, in einem anderen Beitrag habe ich es näher beschrieben.

Bitte um weitere Hinweise.
TIA,
Georg