【发布时间】:2014-08-02 14:53:45
【问题描述】:
有人知道如何添加组件动作键默认值吗?
我听说过 UImanager actionMap,但我不确定 我有 3 个组合框和 2 个文本字段和 1 个表格 将每个组件添加一个关键侦听器非常浪费时间按 ESC 来处理对话框 喜欢
KeyAdapter key=new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
int x=JOptionPane.showConfirmDialog(null, "EXIT APP ?", null, JOptionPane.YES_NO_OPTION);
if(x==JOptionPane.YES_OPTION)
{
dialog.setVisible(false);
dialog.dispose();
}
}
};
combo1.addKeyListener(key);
combo2.addKeyListener(key);
combo3.addKeyListener(key);
table.addKeyListener(key);
dialog.addKeyListener(key);
text1.addKeyListener(key);
text2.addKeyListener(key);
如果我从任何组件 JDialog 中按 ESC,任何设置默认键的解决方案都会处理?
【问题讨论】:
-
只需将键绑定添加到 JDialog 内容窗格。见How to use Key Bindings。我不明白你为什么需要在所有组件中添加一个
-
@peeskillet
Just add a key bind to the JDialog content pane- 是的,我发现这很困难。我最初是将绑定添加到根窗格中,这让我很伤心。昨晚我需要的时候这个答案在哪里:)
标签: java swing keylistener key-bindings jdialog