2009-04-14 6 views
1

Ich habe Probleme mit einer Air Flex Anwendung. Immer wenn ich auf Alt + etwas klicke, macht Vista einen Ton. Ich vermute, dass es mit einer nicht vorhandenen Menüleiste verbunden ist.ALT + Shortcuts machen einen "Piep" Sound

Irgendwelche Ideen, wie ich meine App, die auf Verknüpfungen reagiert, wo alt beteiligt ist, deaktivieren?

Hier ist der Code:

stage.addEventListener(KeyboardEvent.KEY_UP, onKeyUp); 
... 
      public function onKeyUp(event:KeyboardEvent):void { 
       trace("inside onKeyUp"); 

       if (event.altKey) { 
        if (event.keyCode == 69 /* E */) { 
         detailsBtn.dispatchEvent(new MouseEvent(MouseEvent.CLICK, true)); 
        } else if (event.keyCode == 65 /* A */) { 
         andmevahetusBtn.dispatchEvent(new MouseEvent(MouseEvent.CLICK, true)); 
        } else if (event.keyCode == 83 /* S */) { 
         Application.application.close(); 
        } else { 
         trace("Key pressed. keyCode: " + event.keyCode + ", charCode: " + event.charCode); 
        } 
       } 
      } 

ich alles versucht:

event.preventDefault(); 
event.stopPropagation(); 
event.stopImmediatePropagation(); 

Nichts half.

Antwort

0

Versuchen Sie, den Schlüsselcode im Onkeypress-Ereignis auf 0 zu setzen (wenn Sie ihn danach nicht verwenden).

+0

Leider kann ich nicht. Computer mit Flex-Umgebung installiert ist bei der Arbeit. –

1

Es kann sein, dass das Betriebssystem den Tastendruck erfasst und darauf reagiert. In diesem Fall spielt der Versuch, das Schlüsselereignis in Ihrer Anwendung zu stoppen, keine Rolle.

Die Ereignisverarbeitung in Flex/Flash-Apps hat keine Auswirkungen auf die Windows-Ereignisverarbeitung. Das Stoppen der Weiterleitung von Tastendruck in Actionscript kann sich nur auf Ihre App und nicht auf das Betriebssystem auswirken.

könnten Sie versuchen, zwei Dinge:

  • finden, warum Windows-aufgrund Alt Drücken von Tasten piept (möglicherweise aufgrund eines internationalen Tastaturlayout sein, Zugangsoptionen, oder wer weiß was) oder
  • Auch wenn es nicht ganz Ihr Design paßt, wechselt von Alt + X Drücken von Tasten zu Ctrl +X Drücken von Tasten?
+0

Das stimmt. Windows (Vista in meinem Fall) hört ALT + ... Wenn es nur möglich wäre, sogar die ausgeblendete Menüleiste von der Flex-Anwendung für ein Elternfenster zu deaktivieren, das beim Start geöffnet wird (das ist für untergeordnete Fenster möglich). –