public class Points extends JPanel {
public void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2d = (Graphics2D) g;
g2d.drawLine(60, 20, 80, 90);
}
}
我不太确定
Graphics2D g2d = (Graphics2D) g;
应该做什么。它只是一个普通的JPanel,后来又添加到JFrame中。
如果任何人都可以给我一些建议,那将是非常有帮助的,因为我在很长一段时间内都停留在这行代码中。
最佳答案
该声明
Graphics2D g2d = (Graphics2D) g;
只是将
Graphics
对象强制转换为Graphics2D
。它用于访问Graphics2D
提供的方法。在这种情况下,没有必要,因为Graphics
也具有drawLine
方法,因此,如果您不需要更高级的方法(例如rotate
和translate
),则可以使用@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawLine(60, 20, 80, 90);
}
关于java - Java- Swing -图形2D,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16845216/