繁体   English   中英

Java制作棋盘格GUI

[英]Java Making A Checkerboard GUI

我试图绘制一个棋盘图形用户界面,但是我遇到了一些问题。

我已经设置好框架和布局,我需要逻辑上的帮助,以使棋盘格交替合适的颜色。

这是框架:

    JFrame checkerBoard = new JFrame(); 
    checkerBoard.setSize(400, 400); 
    checkerBoard.setVisible(true);
    checkerBoard.setTitle("CheckerBoard"); 
    checkerBoard.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

    int row = 8; 
    int col = 8; 

    Container pane = checkerBoard.getContentPane(); 
    pane.setLayout(new GridLayout(row, col)); 

有人可以帮我使用64个JPanels创建棋盘格模式的逻辑吗? 预先感谢大家的帮助!

public class SquarePanel extends JPanel{
    Color color = Color.BLACK;
    static boolean isRed = false;

    public SquarePanel(){
        if (isRed){
            color = Color.BLACK;
            isRed = false;
        } else {
            color = Color.RED;
            isRed = true;
        }
    }

    protected void paintComponent(Graphics g){
        super.paintComponent(g);

        g.setColor(color);
        g.fillRect(0, 0, getWidth(), getHeigth());
    }
}

您可以使用此面板来替代正方形颜色。 每次创建new SquarePanel() ,它将从红色到黑色或从黑色到红色交替显示颜色。 您也可以使用此面板在作品上绘画。 只需在当前代码中调用它64次

您听说过模数吗? 尝试将其与行/列号一起使用。 谷歌一下。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM