-1

JLayeredPane の右側にボタンを追加する方法はありますか? 階層化されたペインにはチェス盤を表す JPanel が含まれており、この盤の上にはチェスの駒を表す JLabels があります。基本的に、ボードの右側に別のパネルを取り付けて、プレイヤー情報と再戦などを可能にするボタンが必要です。このパネルを追加するにはどうすればよいでしょうか?

これが私のコードのスニペットです。レイヤードペイン内にボードパネルを設定する部分:

private void setupBoard() {
    paneX = new JLayeredPane();
    getContentPane().add(paneX);
    paneX.setPreferredSize(new Dimension(500,500));

    boardX = new JPanel(); 
    paneX.add(boardX, JLayeredPane.DEFAULT_LAYER);
    boardX.setLayout(new GridLayout(8,8));
    boardX.setBounds(0,0,500,500);
    chessBoard.setPreferredSize(new Dimension(500,500));
}

次に、パネル上の各コンポーネントに jlabels を追加します。前述のように、ボードの右側に大きなパネルをもう 1 つ追加したいと考えています。

4

1 に答える 1

2

これに a を使用する理由がよくわかりませんJLayeredPaneが、それは私だけです。

Layoutメイン コンテナの を に設定しBorderLayoutます。メインコンテナboardXの位置にを追加します。BorderLayout.CENTER

プレーヤー情報パネルをBorderLayout.EASTメイン コンテナーの位置に追加します。

親コンテナーboundsboardX、パネルの優先/最小/最大サイズ (使用するレイアウト マネージャーに基づいて) を使用して、作成するのに最適なサイズを決定するため、実際には何の効果もありません。あなたのコードでは、とにかく500x500になるでしょう...

于 2013-09-16T22:10:04.187 に答える