java graphics 初始化_如何在Java中初始化Graphics对象?

那么这里有1两个问题:

Graphics g1;

a.paint(g1);

而且您获得的G1未初始化错误。这是因为变量g1从来没有被设置为任何东西,并导致编译错误。要获得代码编译,您至少需要这样做:

Graphics g1 = null;

a.paint(g1);

但是,这显然不会帮助你太多。当你尝试运行你的代码时,你会得到一个NullPointerException。为了真正使你的图形绘制,你需要这样的:

anim1 a=new anim1();

Graphics g1 = anim1.getGraphics();

a.paint(g1);

然而,因为Anim1不会出现在屏幕上仍然无法工作。为了让它出现在屏幕上,你需要这样的东西:

import java.awt.*;

import javax.swing.*;

import java.applet.*;

public class So1 extends Applet{

public void paint (Graphics g)

{

g.drawString("hello",40,30);

}

public static void main(String ad[])

{

JFrame jp1 = new JFrame();

So1 a=new So1();

jp1.getContentPane().add(a, BorderLayout.CENTER);

jp1.setSize(new Dimension(500,500));

jp1.setVisible(true);

}

}

现在注意,我们并没有真正调用paint()函数。这是由awt处理的,它实际上会选择图形上下文,并为我们调用我们的绘图函数。但是,如果你想要的话,你可以传入你想要的任何图形对象,并让它借鉴。(所以,如果你想画你的组件到的图像,你可以做到这一点)

(注意,我改变了类名从anim1到So1中)

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值