2012-03-06 32 views
1

我有一個標籤(使用TabNavigator)的應用程序。FLEX - 禁用空格鍵

當它開始時,我將標籤切換到nr.2(默認是標籤1)。我需要能夠按住空格鍵並拖動鼠標進行平移,但是當我這樣做時,它會切換回第一個選項卡。所以空格鍵觸發它切換。

我試過使用擴展tabNavigator,像下面的代碼,但它不工作的自定義lass。另外嘗試設置focusEnabled = false,但沒有運氣。

任何想法我會如何解決這個問題?

非常感謝提前, 了Stian伯格拉森

package components 
{ 
import mx.containers.TabNavigator; 
import flash.events.KeyboardEvent; 

public class myTabNavigator extends TabNavigator 
{ 
    public function myTabNavigator() 
    { 
     super(); 
    } 

    protected override function keyDownHandler(e : KeyboardEvent) : void { 
     if (e.keyCode == 32) { // Spacebar 
      return; 
     } 
     super.keyDownHandler(e); 
    } 

} 

}

回答

1

這可能是造成因爲你沒有冒泡停止您的活動。

試試這個:

protected override function keyDownHandler(e : KeyboardEvent) : void { 
    if (e.keyCode == 32) { // Spacebar 
     e.preventDefault(); 
     e.stopImmediatePropagation(); 
     return; 
    } 
    super.keyDownHandler(e); 
} 
+0

謝謝。不知怎的,它現​​在適用於我上面發佈的代碼...奇怪.. 此外,我突然出現錯誤:內存不足..試圖解決它.. – 2012-03-06 12:57:39