java - Swing 字母数字键盘

标签 java swing

我正在制作一个键盘,它应该像手机键盘一样工作,并且想知道如何管理我们在单个按键中的选择。例如,数字 1 的键也有字母 ABC,并且在不到 x 秒内连续单击该键允许再次从 1 更改为 A 到 B 到 C 到 1,如果超过 x 秒,我们将返回到初始状态数字1。我猜想有一个计时器的用途,但我真的不知道如何使用它。感谢您的建议和指导。

最佳答案

不,您不需要计时器。

在键的操作监听器中,您要做的第一件事就是获取当前时间。

您将当前时间与上次按下该键的时间(上一次)进行比较。

如果时间差小于x秒,则将键的值从1移至A,A移至B,B移至C,或C移至1。

如果时间差超过x秒,则将key的值设置为1。

不知何故,您必须确定哪种类型的按键实际上将字符发送到显示器。

处理完成后,将当前时间保存为上次时间。

关于java - Swing 字母数字键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17088870/

相关文章:

java - bnd - 使 MANIFEST.MF 的结果为每个 Bundle-ClassPath 和 RequireBundle 条目一行

java - 从 shell 脚本生成的 Java InputStream 中读取是批量进行的

java - 显示图表故障的下一个和上一个按钮

java - 需要有关在 JTextPane 上绘图的帮助

java - 在 JTable 中使用 JButton 和 Action 有哪些缺点?

java - Jersey | List<Object> 到客户端 post/get/put 请求?

java.io.NotSerializableException::ObjectOutputStream: writeObject 方法

java - 如何在不同的字符串之间抓取多个字符串?

java - 访问 JTableHeader 中的 JTextField

java - 如何正确更改复选框文本呈现行为?