有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在JFrame中使用正方形绘制网格

我对编程非常陌生,而且我刚刚开始研究算法,我想创建一个算法来绘制网格作为一个挑战,而不是使用GridLayout()方法。出于某种原因,我的方块只开始在窗口顶部和窗口侧面的开始下方绘制一点,我没有找到发生这种情况的原因

import javax.swing.*;
import java.awt.*;

public class JFrameSquares extends JPanel {

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

        int width = getWidth();
        int height = getHeight();
        int rows = width/30;
        int cols = height/30;

        for (int j = 0; j < 30; j++)
        {
            for(int i = 0; i < 30; i++)
            {
                g.setColor(Color.red);
                g.drawRect(i* rows,j* cols,i* rows,j* cols);
            }
        }

    }

    public static void main(String[] args) {
        JFrame window = new JFrame();
        window.setSize(380,380);

        JFrameSquares panel = new JFrameSquares();
        window.add(panel);

        window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        window.setVisible(true);
    }
}

共 (0) 个答案