小编Zul*_*lfe的帖子

JTable为Graphics返回null?

我正在尝试使用我制作的Painter对象在我的JTable上绘制线条,但由于某种原因table.getGraphics()返回null.

画家类:

import java.awt.BasicStroke;
import java.awt.Graphics;
import java.awt.Graphics2D;

import javax.swing.JTable;

public class Painter extends JTable {

    public Painter(){

    }

    public void paintSudokuLines(Graphics g){
        paintComponent(g);
    }

    public void paintComponent(Graphics g){
        super.paintComponent(g);
        Graphics2D g2 = (Graphics2D) g;
        g2.setStroke(new BasicStroke(3));
        g2.drawLine(0, 300, 400, 250);
    }
}
Run Code Online (Sandbox Code Playgroud)

我用以下方法调用方法:

private Painter paint = new Painter();
paint.paintSudokuLines(table.getGraphics());
Run Code Online (Sandbox Code Playgroud)

我不知道为什么会这样,所以我需要一些解释.

java swing jtable paint line

0
推荐指数
1
解决办法
420
查看次数

标签 统计

java ×1

jtable ×1

line ×1

paint ×1

swing ×1