2016-12-12 20 views
-1

私はJavaでボードゲームの非常に基本的なプロトタイプを構築しようとしています。ゲーム自体のボードのためのビューは、基本的に数字やその他の要素のみを表示します。このビューと全くやりとりする方法はありません。スイングでプログラムされ、ゲームとやりとりするために使用される他のビューがあります。私はまだレイヤーペインを使ってゲームボードのようなチェスボードを構築するためにスイングを使うべきですか、それともかなり古くなったawtキャンバスを使うべきですか?あまりにも多くの過剰人ではない別の候補がありますか?Javaでの単純なボードゲームのためのキャンバスまたはスイング?

スイングはまだ得られる方法だと思いますが、それはちょうど異なるレイヤーを持つ少数のイメージを示す何かのためにそれを使用するために直感的ではないようです。

+0

ようこそスタックオーバーフロー!本、ツール、ソフトウェアライブラリ、チュートリアル、またはその他のオフサイトリソースを推薦するか、見つけようとする質問は、批判的な回答と迷惑メールを引き付ける傾向があるため、スタックオーバーフローのトピックではありません。代わりに、[問題を説明する](http://meta.stackoverflow.com/questions/254393)、これを解決するためにこれまでに何が行われているか。 –

+0

SwingコンポーネントとAWTコンポーネントを不用意に混在させると、[予期しない結果が生じる可能性があります(http://www.oracle.com/technetwork/articles/java/mixing-components-433992.html)。 – trashgod

+0

(私はdownvoteしなかったが、質問は非常に非特定です)。 'Canvas'と' JPanel'の違いは、あなたが何をどのように実装しているかについては無視できます。ごみ箱に記載されている点のため、SwingでCanvasを使用することはほとんどありません。通常は、JPanelでカスタムペインティングを行います。しかし、実際のペイントコードは基本的には同じです(スイングでは、いくつかのファンシーなレイヤーペインを使用する必要はありません - キャンバスのように 'JPanel'を描画するだけです...) – Marco13

答えて

0

ゲームにはゲームループが必要です。そのため、スイングはどのように行うのが最適な方法ではありません。 とThreadを使用する方がよく、の場合はJPanelを使用してください。

+1

私が同意するかどうか分からないのは、基本的にボードゲームのプロトタイプなので、アニメーションの必要はなく、ボードを変更する必要があるまでにはかなりの時間がかかります。 – user3839833

+0

OPがアニメーションを使ってボード上でリアルタイム戦略ゲームを作ろうとしている場合、おそらくはいです。もしそうでなければ、ゲームループを実装することは過度のことです。 – user3437460

関連する問題