java - 如何在 Java 中创建屏幕键盘?

标签 java eclipse swing jframe jpanel

我正在做一个学校项目,我们必须创建一个虚拟智能手机,在计算机上运行。

我的问题是我需要在屏幕上创建一个键盘(就像在智能手机上一样),然后您可以通过单击鼠标来使用它。我可以只创建每个 JButton,但这会花费很长时间。所以我希望有人知道某种算法可以创建所有按钮并将它们正确放置在屏幕上。

提前谢谢你:)

最佳答案

您可以通过使用 for 循环来构建按钮。每个键盘行一个循环是一种合理的方法。

String row1 = "1234567890";
String row2 = "qwertyuiop";
// and so forth
String[] rows = { row1, row2, .. };
for (int i = 0; i < rows.length; i++) {
    char[] keys = rows[i].toCharArray();
    for (int j = 0; i < keys.length; j++) {
        JButton button = new JButton(Character.toString(keys[j]));
        // add button
    }
}
// add special buttons like space bar

这可以通过更 OOP 的方法更优雅地完成,但这个基本的循环系统将起作用。

关于java - 如何在 Java 中创建屏幕键盘?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13613075/

相关文章:

java - 任何可读的、有效的 Flex+BlazeDS+Spring+GAE(在 GAE 数据存储中存储多个表)教程?

java - 如何在 Java 中合并音频和视频

java - 整数划分为总和和乘积

eclipse - 无法让 Subclipse 在 CentOS 工作站上运行

java - 当jlist高度取决于列表中的行数时,如何在java中创建动态Jlist?

java - 使用 DocumentFilter 仅接受 JTextField 中的 double 值

java - 关于使用 Oracle 10g 进行后续锁定的 Hibernate 警告

Eclipse - “Workspace in use or cannot be created, chose a different one.” 即使我删除了 .lock

java - 如何使用内联匿名类声明避免合成访问编译器警告,这是什么意思?

java - 使用计时器的多线程图形?