0

我是一个巨大的新手,我有一个通常将项目打印到 Java 控制台窗口的程序。我希望这个程序成为一个用户可以与之交互的窗口。我没有使用对话框和面板的原因是因为这个程序需要多次打印到控制台窗口。传统的对话框不会持续更新或复合已经打印在盒子上的数据。我意识到还有另一种方法可以通过创建一个模仿 Java 控制台窗口的程序来做到这一点。因为我是菜鸟,所以这个网站上所有重定向问题和答案的 java 控制台都让我大吃一惊。谁能帮帮我吗?

4

2 回答 2

2

请参阅如何使用编辑器窗格和文本窗格可能会有所帮助并为您提供一些想法。

于 2012-04-20T18:41:44.953 回答
1

简短的回答是,每次您想更新文本框的内容时,再次调用 setText 函数。内容没有“附加”功能:您必须每次都提供全部内容。如果您想要模仿控制台窗口的东西,其中消息继续滚动,最简单的做法是将整个内容保存在 StringBuilder 中。每次将新文本附加到 StringBuilder 时,然后 setText(myStringBuilder.toString)。

我想你可以写 mybox.setText(mybox.getText()+"new contents")。这会有点低效,但可能没什么大不了的。

我不确切知道您在做什么,但是尝试将控制台输出重定向到文本框听起来更令人讨厌,这是值得的。只需将您的数据放在文本框中:不要将其写入其他地方,然后尝试将其取回并放在您想要的位置。我想如果你有数千行代码写入控制台,现在你希望它进入一个文本框,那么不必更改所有代码可能是有价值的。但是控制台应用程序的结构与 GUI 应用程序的结构如此不同,以至于更改输出语句可能是您必须返工的最少的事情。

于 2012-04-20T18:40:45.490 回答