Java 2D图形——绘制矩形

标签 java swing jpanel graphics2d

所以我对 Java 编程和一般编程还很陌生,请原谅我缺乏知识。我正在尝试使用给定的坐标在屏幕上绘制一个简单的矩形。

这是我在抽屉类中的代码:

public class Drawer extends JPanel {

public static void drawPixel(Graphics g, int x, int y) {
    g.fillRect(x, y, 5, 5);
}

}

这是我尝试在主类中使用的代码:

Drawer drawer = new Drawer();
Drawer.drawPixel(Graphics g, i9, i10);

所以我真的不明白第一个参数是干什么用的。它给我一个错误,说它无法解析“符号 g”。 i9 和 i10 是我希望它绘制矩形的坐标。

在此先感谢您的帮助。 :)

最佳答案

你不能画那样的东西。你应该使用 paintComponent() 方法来绘制。

检查这个:

public class RectDrawer extends JPanel {
    private int x;
    private int y;
    public RectDrawer(int x, int y){
        this.x = x;
        this.y = y;
    }
    public void paintComponent(Graphics g) {
        g.fillRect(x, y, 5, 5);
    }
}

关于Java 2D图形——绘制矩形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18538053/

相关文章:

java - 将饼图设置为 JLabel 而不是新框架

Java setOpaque 方法无法在其他面板之上添加面板

java - drawString 方法不起作用

java - 在Eclipse中使用swt组件创建星级评定系统

java - Apache POI : Cannot change cell value

java - 如何使 JTable 的标题透明

java - 打开另一个 JFrame 时 JFrame 卡住

java - 将文件 DSN 与 JDBC 一起使用

java - SharedPreferences 在应用程序操作期间发生冲突,然后在应用程序强制关闭/重新启动设备后完全消失的问题

java - 如何正确地将 ActionListeren 添加到自定义 JComponent