【问题标题】:How to put a text-interface based on system.out.print on a GUI? - JAVA -如何在 GUI 上放置基于 system.out.print 的文本界面? - JAVA -
【发布时间】:2012-05-23 22:25:59
【问题描述】:

我为大学做了一个项目(这是 Zork the Game 的个人实现)。按照要求,我使用 system.out.print 使用文本界面进行操作。有没有办法“将文本界面放在 GUI 中”?我的意思是一个简单的窗口,它有 2 个字段,一个显示文本输出,一个用于通过键盘输入的文本。

我为 Eclipse 下载了 windowsBuilder 但是.. 我不知道该怎么办! :(

谢谢!

【问题讨论】:

  • 例如,对于第二个问题,您可以添加 KeyListener 并将推送的键附加到 JTextArea 中。
  • 您要求我们为您编写程序。具体有什么不明白的?
  • @Jim Barrows 如果我使用 WindowBuilder 创建一个窗口,我只能找到创建静态文本字段的方法。我想在运行我的应用程序时获得终端中的“连续”文本,以及放置输入的字段(就像终端本身,但更可爱,例如彩色文本)
  • 是的,你可以,这很容易,你想查找 Swing,可能是 JFrameJTextAreaJTextField。查看教程以获取更多信息docs.oracle.com/javase/tutorial/uiswing/components/index.html

标签: java user-interface text graphic windowbuilder


【解决方案1】:

当然有,只需更改 System 类的输出流。创建一个 PrintStream,它将您的数据写入您的摆动组件,然后在 System 类中替换它以使用它。

System.setOut(printStream);

【讨论】:

    【解决方案2】:

    如果您正在为文本游戏执行此操作,我建议您使用 Glk 库。 Glk 是为文本游戏设计的跨平台窗口 I/O 系统。您可能必须编写 JNI 接口,因为这些库往往是用 C 编写的:一个名为 GlkJNI 的现有项目旨在以相反的方式工作,因此 C 程序可以使用 Java UI,但无论如何它可能会有所帮助.

    【讨论】:

      【解决方案3】:

      有关如何创建满足您要求的 GUI 的示例,请查看这篇文章:http://www.comweb.nl/java/Console/Console.html

      使用构建 GUI 的最佳实践,但为了快速和肮脏,它会让你开始。不过,如果这将是您认真对待的事情,您真的应该阅读如何正确编写 Swing 应用程序。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-09-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-09-06
        • 2012-06-06
        • 1970-01-01
        • 2014-06-07
        相关资源
        最近更新 更多