JAVA Graphics调用 20

JPanelaa=newJPanel();Graphicsas=null;as.drawOval(10,10,10,10);aa.paint(as);这样写为什么不行呢?... JPanel aa = new JPanel();

Graphics as = null;
as.drawOval(10,10,10,10);

aa.paint(as);

这样写为什么不行呢? 第三句为什么实现不了呢?提示空指针
展开
 我来答
曹洋涛1993
2014-09-14
知道答主
回答量:20
采纳率:0%
帮助的人:9.4万
展开全部
Graphics as = null;你赋的值就是空的啊!肯定是空指针啊!必须要实例化(new)一个!可以让JPANEL继承canvas(画布类),使用paint()画;;或者自定义一个JPANEL类,使用paintComponent()方法,例如:
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.setColor(Color.BLACK);
g.fillRect(rc.x, rc.y, rc.width, rc.height);
}
红玫瑰mq532
2014-09-14 · 超过65用户采纳过TA的回答
知道答主
回答量:138
采纳率:66%
帮助的人:60.6万
展开全部
可以写个类继承Canvas,里面有个paint(Graphics g )方法,该方法是系统自动调用的,在这个方法里可以获得Graphics g 。
希望对你能有所帮助。
追问
恩 那样会写  就是不明白为什么这样写不行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-09-14
展开全部
第二句没有赋值(as = null),肯定报NullPointException
追问
应该赋什么类型的值呢?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式