Java中的swing自定义形状
我想要实现的是这样的目标:
public void paint(Graphics g) {
Graphics2D ga = (Graphics2D) g;
MyShape c = new MyShape();
ga.draw(c);
}
我希望MyShape
类包含绘制一个包含数字的圆圈所需的信息
因此,我想我需要创建某种容器/组件,并在其中绘制我需要的东西(圆圈和数字),然后将其进一步传递给我上面粘贴的方法
问题是我不知道该扩展哪个类。。。故事的其余部分
# 1 楼答案
必须扩展类Shape,在类Shape中必须重写paintComponent,以便Graphics2D对象知道要绘制什么
# 2 楼答案
当然,您可以自己实现^{} 接口,但是当您可以使用现有的子类(例如^{} )时,就没有必要了。只要用
width
和height
的相同值构造它。有一个例子here展示了如何在Ellipse2D.Double
中居中放置任意图示符# 3 楼答案
一个形状就是:一个形状。圆是一种形状。矩形是一种形状。但里面有数字的圆不是形状。我猜你其实想要这样的东西: