使用Canvas在Java中绘图
我想绘制Java的Canvas,但由于我不知道自己在做什么而无法正常工作。这是我的简单代码:
import javax.swing.JFrame;import java.awt.Canvas;
import java.awt.Graphics;
import java.awt.Color;
public class Program
{
public static void main(String[] args)
{
JFrame frmMain = new JFrame();
frmMain.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frmMain.setSize(400, 400);
Canvas cnvs = new Canvas();
cnvs.setSize(400, 400);
frmMain.add(cnvs);
frmMain.setVisible(true);
Graphics g = cnvs.getGraphics();
g.setColor(new Color(255, 0, 0));
g.drawString("Hello", 200, 200);
}
}
窗口上没有任何内容。
我以为“画布”是纸而“图形”是我的铅笔是我的错吗?那是怎么回事?
回答:
意见建议:
- 不要使用Canvas,因为不要将AWT与Swing组件不必要地混合。
- 而是使用JPanel或JComponent。
- 不要通过调用
getGraphics()
组件来获取Graphics对象,因为获得的Graphics对象将是瞬态的。 - 绘制JPanel的
paintComponent()
方法。 - 所有这些在容易找到的教程中都有很好的解释。在尝试猜测这些内容之前,为什么不先阅读它们?
关键教程链接:
- 基本教程:课程:执行自定义绘画
- 更高级的信息:AWT和Swing中的绘画
以上是 使用Canvas在Java中绘图 的全部内容, 来源链接: utcz.com/qa/436233.html