我有與按鈕以及熱鍵一起的動作。我想要動畫(通過鼠標單擊時顯示的動畫類似的動畫)按鈕時,通過熱鍵觸發其各自的動作。那可能嗎?通過熱鍵執行相應動作時的動畫按鈕
我做如下:
btnAdd.setAction(addDataAction);
panelAdd.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT)
.put(KeyStroke.getKeyStroke("ctrl ENTER"), addDataAction);
panelAdd.getActionMap().put(addDataAction, addDataAction);
如果您覆蓋面板的'processKeyBinding'方法並檢查正確的按鍵操作,那麼至少您的操作不必知道該按鈕,您也可以設置按下的狀態。 – ughzan 2012-02-12 18:13:46
它的工作原理!但這與實際情況不同。如果點擊鼠標,按鈕變爲藍色背景,這不會發生在這裏。無論如何,好的答案!謝謝。 – Ahamed 2012-02-12 18:19:07
要獲得「藍色」背景,先執行setArmed(true),然後調用setPressed(true),然後在定時器事件setArmed(false)中調用setPressed(false)。順序很重要,否則你的行動將被再次調用。 – ughzan 2012-02-12 18:48:12