TAB鍵

2012-06-13 97 views
0

我看到兩個問題的Java代碼,希望用戶按TAB鍵,當代碼在Chrome運行作爲appletTAB鍵

首先,貌似沒有被發現的新聞。

更多nastily在IE9按TAB失去焦點的小程序完全。

我已經看到這些報道過,但我的搜索,到目前爲止,如果有一個解決方案並沒有提出很好地解決,甚至是一個快速的答案......不是嗎?

運行作爲桌面或在webstart/JNLP應用TAB效果很好,只在小程序它會導致混亂。

+1

參考java的錯誤http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6456655 –

+0

你的問題是在這裏嗎?我們是否可以確認行爲,有一個解決方法,一個錯誤修正,一個建議哪個鍵可以代替? –

+0

@userunknown「到目前爲止搜索沒有提出一個整潔的解決方案,或者即使解決方案存在,甚至快速回答」 –

回答

0
public void init() 
    { 
     Container topParent = null; 
     Container parent = this; 
     // The natural thing would be to call getParent() until it returns 
     // null, but then you would be looping for a long time, since 
     // PluginEmbeddedFrame's getParent() returns itself. 
     for (int k=0; k < 10; k++) { 
      topParent = parent; 
      parent = parent.getParent(); 
      if (parent == null) break; 
     } 

     // If topParent isn't a KeyEventDispatcher then we must be in some 
     // Plugin version that doesn't need the workaround. 
     try { 
      KeyEventDispatcher ked = (KeyEventDispatcher)topParent; 
      KeyboardFocusManager kfm = KeyboardFocusManager.getCurrentKeyboardFocusManager(); 
      // You have to remove it twice, otherwise the problem isn't fixed 
      kfm.removeKeyEventDispatcher(ked); 
      kfm.removeKeyEventDispatcher(ked); 
     } catch (ClassCastException e) {} 
    } 
+1

在代碼框之外的答案中有一點點評論有助於理解代碼背後的概念。代碼是什麼問題的答案。 –