[英]Netbeans F2 Keystroke Not Functioning When Selecting A Record In JTable
我有此應用程序可以編輯員工的記錄,並且可以執行此操作,用戶可以單擊該特定記錄並按“編輯”按鈕,或者用戶可以按我創建的鍵盤(F2)中的快捷鍵。 這是我的代碼:
btn_EditEmployee.getInputMap(btn_EditEmployee.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke(KeyEvent.VK_F2, 0), "btn_EditEmployee");
btn_EditEmployee.getActionMap().put("btn_EditEmployee", new AbstractAction() {
public void actionPerformed(ActionEvent e) {
//my code for editing an employee
}
});
但是我的問題是,如果我單擊表上的記錄,我創建的F2擊鍵將無法正常工作。 有人可以告訴我為什么它不起作用。 在此先感謝您的回答。
編輯:我忘了提到當我在JTable上選擇記錄時,F1,F3-F12正在使用我的代碼。 唯一的問題是F2。 我堅持使用F2作為“編輯動作”,因為我的F1是應用程序上的“創建動作”。
或者用戶只需按我創建的鍵盤F2中的快捷鍵即可。
您有幾個問題:
因此,基本代碼為:
Action action = new AbstractAction(...)
{
@Override
public void actionPerformed(ActionEvent e)
{
// add logic here
}
};
JButton button = new JButton( action );
String key = "EditAction"
KeyStroke ks = KeyStroke.getKeyStroke(KeyEvent.VK_R, 0);
InputMap im = table.getInputMap(JTable.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
im.put(ks, key);
table.getActionMap().put(key, action);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.