2011-05-03 43 views
1

嘿,大家,只是一個簡短的問題,我沒有找到任何地方。我添加一個滾動窗格到JPanel,帶有2個JScrollBars。一個垂直和一個水平。一切工作正常,只是我不希望滾動條使用箭頭鍵滾動。我如何實現這一目標?JScrollBar,刪除keyListener?

我一直在檢查adjustlisteners,但真的沒有發現任何有價值的東西給我。謝謝你的幫助!

回答

1

那麼你就需要在滾動的InputMap中鍵綁定,並指出了導航鍵進入娜,如:

InputMap inputMap = scrollPane.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT); 
    inputMap.put(KeyStroke.getKeyStroke("RIGHT"), "do-nothing"); 
    // same for all navigation keys you want to disable 
    ... 

找到其擊鍵記錄,看看到BasicLookFeel - 的部分,其中涉及到的getDefaults 「ScrollPane」

請注意:這非常不尋常,您的用戶可能會感到煩惱!

+1

「要小心:這非常不尋常,你的用戶可能會感到惱火!」我在製作過程中聞到一個'不可用的GUI'! ;) – 2011-05-04 12:10:35

+0

非常感謝!到底是我在找什麼:)事情是我已經實現了我自己的滾動條聽衆,所以它沒有用處,只是發現它讓我感到惱火,我有兩個聽衆幾乎是一樣的東西,除了在滾動期間發生的一些事件。 – Hasslarn 2011-05-09 20:28:52