Java - Консоль на Апплете - PullRequest
0 голосов
/ 29 марта 2012

Я пытаюсь создать текстовую игру на Java, похожую на Zork, и разместить ее на веб-сервере после того, как я закончу, и поэтому я решил сделать программу апплетом.У меня вопрос такой: как мне отображать и вводить строки, которые обычно отображаются через System.out.println и System.in?Я знаю, что могу создать JPanel и отображать текст через JTextArea, но я хочу, чтобы консоль эмулировала терминал, подобный тому, который я сейчас использую, показан здесь:

http://farm8.staticflickr.com/7082/6879721298_323e72cc92_z.jpg

Isесть ли способ добавить фрейм, который будет отображать эмулятор внутри него, или включить консоль для отображения строк, выданных System.out.println?

1 Ответ

0 голосов
/ 29 марта 2012

Есть ли способ добавить фрейм, который будет отображать эмулятор внутри него, или включить консоль для отображения строк, выданных System.out.println?

Это технически возможноперенаправить системные потоки in, err & out, но учтите, что для этого требуется доверенное приложение.(с цифровой подписью разработчика, пользователь нажимает «ОК» при появлении запроса в страшном диалоге), чтобы сделать это.OTOH было бы лучше спроектировать 1 другую версию программного обеспечения для графического интерфейса, который помещает вывод непосредственно в текстовую область или аналогичную (для вывода) и принимает ее из текстового поля (для ввода).

Еще одна альтернатива для приложения в песочнице.(очень глупо, но возможно), чтобы записать вывод в анонимный регистратор.Добавьте обработчик журнала, чтобы получить этот вывод и отобразить его.Использование регистрации действительно решает приложение.вывод, но не пользовательский ввод.

  1. Вернее, проект best должен иметь логику, независимую от устройства ввода / вывода, и использовать этологика как в командной строке, так и в версиях с графическим интерфейсом.

Теперь отмечу, что на скриншоте написано «Консоль дракона».Чем он отличается по функциональности от командной строки Windows?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...