0

我想创建一个带有移动球和所有东西的乒乓球游戏。我现在正在处理我想在中心线两侧添加的乐谱标签。一个标签用于计算机得分,另一个用于玩家得分。问题是我的面板设置为 BorderLayout。我不知道如何将面板添加到该位置。

这是我的构造函数代码:

 * Constructor : PlayPanel.java
 */
// ==============================================
public PlayPanel() {
    super(new BorderLayout());
    setBackground(Color.DARK_GRAY);

    panPlayer1 = new JPanel();
    panComputer = new JPanel();

    padPlayer1 = new JPanel();
    padComputer = new JPanel();

    padPlayer1.setPreferredSize(PADPANEL_SIZE);
    padComputer.setPreferredSize(PADPANEL_SIZE);

    panPlayer1.setBackground(PAN_PLAY);
    panComputer.setBackground(PAN_PLAY);

    panPlayer1.add(padPlayer1);
    panComputer.add(padComputer);

    add(panPlayer1, BorderLayout.WEST);
    add(panComputer, BorderLayout.EAST);

    player1Score.setFont(FONT_SCORE);
    ComputerScore.setFont(FONT_SCORE);

    // Add them to each side if the line !?!?!?!?!?!?
    add(player1Score);
    add(ComputerScore);

    addMouseMotionListener(this);

    panPlayer1.addComponentListener(new ComponentAdapter() {

        @Override
        public void componentResized(ComponentEvent arg0) {
            setPanPanelWidth(arg0.getComponent().getSize().width);
            setPanPanelHeight(arg0.getComponent().getSize().height);
        }

    });

    addComponentListener(new ComponentAdapter() {

        @Override
        public void componentResized(ComponentEvent arg0) {

            setPlayPanelWidth(arg0.getComponent().getSize().width);
            setPlayPanelHeight(arg0.getComponent().getSize().height);
        }

    });
}
4

1 回答 1

3

你有两个选择:

  1. 将它们都添加到 1 行 2 列GridLayout,然后将其添加到BorderLayout.NORTH主面板

  2. 将它们合并到您的 playerPanelComputerPanel对象中。(我也会重新定义ComputerPanelto be computerPanel)。

于 2012-04-02T02:46:33.050 回答