【问题标题】:Action when Enter key pressed on ANY TextField在任何文本字段上按下 Enter 键时的操作
【发布时间】:2013-08-19 12:05:46
【问题描述】:

请注意,这是一个不同的问题,

我正在编写一个 java 程序。我有一个包含 10 个 JTextField 和一个“提交”按钮的表单。 如何在用户按下时调用“提交”按钮的方法 在 10 个文本字段中的 ANY 上输入键?

我应该将 KeyListeners 添加到所有 10 个中,还是有更有效的方法,因为文本字段和按钮都在 JPanel 内?

【问题讨论】:

  • 为什么要调用输入任何文本字段?
  • @TimHerold 可能是提交表单功能:)
  • Submit.doClick(); if 是关于 Swing 的
  • @mKorbel 。但是程序单击如何成为输入键的侦听器?
  • 将 ActionListener 添加到每个 JTextFields 中,永远不要将 KeyListener 用于 JTextComponents

标签: java forms textfield keylistener


【解决方案1】:

不,像这样创建一个通用的事件处理程序,并将其附加到所有

下面是模拟代码:

 KeyAdapter event=  new KeyAdapter() {
            public void keyReleased(KeyEvent e) {
                //do something
            }

            public void keyTyped(KeyEvent e) {
                // TODO: Do something for the keyTyped event
            }

            public void keyPressed(KeyEvent e) {
                // TODO: Do something for the keyPressed event
            }
        });


txtField1.addKeyListener(event);
txtField2.addKeyListener(event);
-----

也可能是一个循环:)

【讨论】:

  • @SURESH ATTA 还有一个 );没有开口)??
  • @SURESHATTA 。真的很感谢这个。有用 ! (避免额外的大括号)但是即使没有一个字段是焦点,也可以这样做吗? Jpanel 是否可以监听按键?
  • 是的 );是一个额外的字母,我直接在这里写代码:)并来到面板keylistener,我还没有尝试..但是在这里我找到了一个link here,但是添加到paenl并不是一个好主意。
猜你喜欢
  • 2016-08-19
  • 2010-11-03
  • 1970-01-01
  • 2017-04-29
  • 2011-06-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-10-01
相关资源
最近更新 更多