【发布时间】:2011-03-22 16:15:13
【问题描述】:
我问了一个关于自定义小部件的问题,但对我是否需要它以及应该如何进行感到困惑。
我目前有这门课
public class GUIEdge {
public Node node1;
public Node node2;
public int weight;
public Color color;
public GUIEdge(Node node1, Node node2 , int cost) {
this.node1 = node1;
this.node2 = node2;
this.weight = cost;
this.color = Color.darkGray;
}
public void draw(Graphics g) {
Point p1 = node1.getLocation();
Point p2 = node2.getLocation();
g.setColor(this.color);
((Graphics2D) g).setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);
g.drawLine(p1.x, p1.y, p2.x, p2.y);
}
}
目前这会在两点之间绘制一条边,但现在我希望同时创建一个成本标签。
我已经添加了节点和边的拖动处理,那么创建标签的最佳方法是什么
我需要为此制作一个自定义小部件吗?谁能解释一下假设通过从 JComponent 扩展来制作一个组件,然后我将通过 g.mixed() 调用它,其中混合是那个新的小部件......?
【问题讨论】: