【发布时间】:2011-03-27 02:47:57
【问题描述】:
我正在编写一个 Java 应用程序,它有一个可用于触摸输入的屏幕数字键盘。普通键输入也将可用,但我想要平板电脑等的键盘。我创建了一个扩展 JPanel 的类。它有 10 个按正常键盘配置布置的按钮。现在我想弄清楚如何让它像普通键盘一样。
我只是不知道如何发出 KeyEvents。到目前为止,这是我尝试过的:
我尝试添加一个新的 KeyListener。在 JPanel 中,当按下按钮时,动作侦听器调用一个方法,该方法创建一个新的 KeyEvent 并将其发送到添加到 JPanel 的所有 KeyListener。但是,无论我添加多少次 KeyListeners,它似乎都与面板没有任何关联。
我尝试的另一件事是将目标 JTextField 传递给 JPanel 并将成员对象设置为 JTextField。但是每次我尝试向其附加文本时,成员对象都是空的。这真的让我很困惑。
我希望有人能指出正确的方向,告诉我如何实现这个键盘,使其成为可能的模块化,以便可以在多个不同的屏幕中使用。
提前致谢!
布伦特
【问题讨论】:
-
添加一些代码,在其中添加 KeyListener 并为按钮操作侦听器引发 KeyEvent。
标签: java swing keylistener