小编xZe*_*asy的帖子

在JFrame中绘制网格

我现在有一个9x9网格的按钮,我想在这些按钮之间绘制一些线来分隔它们并制作3x3网格.

我在另一个窗口的JPanel中尝试了我的方法并且它工作正常,但是我无法在我的JFrame和我的按钮一起工作,因为它什么都没画.每个按钮之间已经有一些空间,所以我们可以看到它在那里的线.

非常感谢您将来的帮助.

这是代码:

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

public class ButtonGrid extends JPanel{

JFrame frame=new JFrame();
int t = 9;

public ButtonGrid(){ //constructor
    frame.setLayout(new GridLayout(t, t, 3, 3));
    addButtons(frame, t);
    frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    frame.pack(); 
    frame.setVisible(true); 

}

@Override public void paint(Graphics g) {
    g.setColor(getBackground());
    g.fillRect(0, 0, getWidth(), getHeight());
    g.setColor(Color.BLACK);
    for (int i = 0; i <= 9; i++) {
        if (i % 3 == 0) {
            int coord = i * 58;
            coord++;
            g.drawLine(coord, 0, coord, 58*9);
            g.drawLine(0, coord, 58*9, coord);
        }
    } …
Run Code Online (Sandbox Code Playgroud)

java swing

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

java ×1

swing ×1