使用Java在面板中显示ASCII的最佳方法是什么?

时间:2012-06-29 10:10:21

标签: java roguelike

我在Java方面没有太多经验,但我试图编写一个简单的类似流氓的游戏来熟悉它,我只是想知道如何创建这样的界面:

A screen from JADE by Thomas Biskup 有没有明显的方法可以让你这样做?作为Java新手,我真的不知道最好的方法是什么。

抱歉模糊不清!

由于

2 个答案:

答案 0 :(得分:4)

JDK中没有这样的(简单)组件 - 如果您不需要颜色,可以使用JTextArea来显示ASCII-Art(在设置固定宽度字体之后)。您需要注意不要遇到字符集问题(如果您不遵守US-ASCII 7位)。 编写处理颜色显示的组件(可能是转义序列,实质上是模拟控制台窗口)也不会太难,但如果你刚开始使用Java,它可能会成为一个不受欢迎的挑战。

您也可以用Java编写游戏并将ASCII显示到系统控制台(您的游戏将简单输出到标准输出)。

编辑:可以通过将内部格式转换为(简单)HTML并使用JLabel显示HTML来实现颜色ASCII。它可能不是最优雅的方法,但实现起来应该相当简单(而且现在硬件速度也不应该成为这种方法的问题)。此方法建立在您可以使用JLabel.setText()并传递以HTML标记开头的字符串的功能的基础上。然后JLabel将整个文本解释为HTML。

答案 1 :(得分:2)

查看Trystan的Ascii Panel,以及关于制作roguelike here的博客和教程。