5

私は Java の経験があまりありませんが、単純なローグライク ゲームを作成してそれに慣れようとしています。次のようなインターフェイスを作成する方法を考えています。

Thomas Biskup による JADE のスクリーン このようなことを行うための明白な方法はありますか? Java を初めて使用するので、どの方法が最適かまったくわかりません。

曖昧でごめんなさい!

ありがとう

4

2 に答える 2

4

JDK にはそのような (単純な) コンポーネントはありません。色が必要ない場合は、JTextArea を使用して ASCII-Art を表示できます (固定幅フォントを設定した後)。文字セットの問題に遭遇しないように注意する必要があります (US-ASCII 7 ビットに固執しない場合)。カラー表示を処理するコンポーネント (そしておそらくエスケープ シーケンス、本質的にはコンソール ウィンドウをエミュレートするコンポーネント) を作成することはそれほど難しくありませんが、Java を使い始めたばかりの場合は、歓迎されない課題であることが判明する可能性があります。

また、ゲームを Java で記述し、ASCII をシステム コンソールに表示したままにしておくこともできます (ゲームは単純に stdout に出力します)。

編集:内部フォーマットを(単純な)HTMLに変換することでカラーASCIIを実現でき、そのHTMLはJLabelを使用して表示できます。これはおそらく最も洗練された方法ではありませんが、かなり簡単に実装できるはずです (また、最近ではハードウェアの速度もこの方法で問題になることはありません)。このアプローチは、JLabel.setText() を使用して、HTML タグで始まる文字列を渡すことができる機能に基づいています。次に、JLabel はテキスト全体を HTML として解釈します。

于 2012-06-29T11:45:27.447 に答える