我使用 Swing/G2D 的次数不多,所以请耐心等待。我有以下类,它是我的 GUI 上的一个组件(意味着是一种画布):
import javax.swing.*;
import java.awt.*;
public class DrawPanel extends JComponent{
public void paintComponent(Graphics g){
Graphics2D g2 = (Graphics2D) g;
g2.setPaint(Color.black);
g2.fillRect(0, 0, getWidth(), getHeight());
BrushStroke bs = new BrushStroke();
add(bs);
}
}
我一直在尝试将以下内容添加到上面的 JComponent 中:
import javax.swing.*;
import java.awt.*;
public class BrushStroke extends JComponent{
public void paintComponent(Graphics g){
Graphics2D g2 = (Graphics2D) g;
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
g2.setPaint(Color.red);
g2.fillOval(0, 0, 10, 10);
}
}
BrushStroke 不会显示在 DrawPanel 上。
我一直在寻找答案,我看到的每个例子似乎都是矛盾的。
如果有人尝试过我的工作,那么将不胜感激。另外,如果我采取了完全错误的方法,请说。