java中单击按钮就画一条线,怎么定义线的颜色??

publicvoidactionPerformed(ActionEvente){if(e.getSource()==b){this.getGraphics().setCo... public void actionPerformed(ActionEvent e) {
if (e.getSource()==b) {
this.getGraphics().setColor(Color.red);
this.getGraphics().drawLine(0, 510, 500, 510);
}
}
这是按钮b监听的事件,b是已定义的按钮,单击按钮后可以画线,不过线是黑色的,请问怎么使得画出来的线是红色的?
展开
 我来答
流天_liu
2011-12-18 · TA获得超过120个赞
知道答主
回答量:44
采纳率:0%
帮助的人:38.6万
展开全部
试试这个:
public void actionPerformed(ActionEvent e) {
if (e.getSource()==b) {
Graphics gp = this.getGraphics();
gp.setColor(Color.red);
gp.drawLine(0, 510, 500, 510);
}
}
可能是两次getGraphics返回的对象不一样,所以最好用一个对象保存,这个是封装在getGraphics函数中的,到底怎么获取绘图对象的并不清楚 (参考地址:http://www.j2megame.org/index.php/content/view/2624/140.html
黑色的诗意0
2011-12-18 · TA获得超过248个赞
知道答主
回答量:76
采纳率:0%
帮助的人:86.6万
展开全部
DebugGraphics dbg=new DebugGraphics();
Point p=m.getPoint();
dbg.setColor(Color.red);
dbg.drawLine((int)p.getX(),(int)p.getY(),2,2);
追问
照你的说法改成
if (e.getSource()==b) {
DebugGraphics dbg=new DebugGraphics();
dbg.setColor(Color.red);
dbg.drawLine(0, 510, 500, 510);
}
出错了。

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at javax.swing.DebugGraphics.setColor(DebugGraphics.java:201)
at figure_cut.CutAndFill.actionPerformed(CutAndFill.java:155)
...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友1d0535d
2011-12-18 · 超过36用户采纳过TA的回答
知道小有建树答主
回答量:83
采纳率:0%
帮助的人:92.9万
展开全部
Graphics g = this.getGraphics();
g.setColor(Color.red);
g.drawLine(0, 510, 500, 510);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式