初学者。当按下退格并且字段为空时,是否有人知道一种快速简便的方法让JTextField不发出蜂鸣声?我在网上看到了一些关于改变DefaultEditorKit的事情,但我没有能够理解。任何帮助将不胜感激。
答案 0 :(得分:2)
这段代码对我有用。
Action beep = textArea.getActionMap().get(DefaultEditorKit.deletePrevCharAction);
beep.setEnabled(false);
答案 1 :(得分:0)
编辑:我稍后再提出一个可能更容易做到的答案。我先读一下。
您可以尝试覆盖JTextField的processKeyEvent方法,并检查是否1.)按下的键是退格键,以及2.)JTextField为空。如果其中任何一个都是假的,那么它应该表现得正常。否则,您可以从方法返回。
答案 2 :(得分:0)
我没有机会试试这个,但你可以禁用哔声动作。
JTextField field = new JTextField();
Action action;
a = field.getActionMap().get(DefaultEditorKit.beepAction);
a.setEnabled(false);