首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Applet绘制

Applet绘制
EN

Stack Overflow用户
提问于 2013-03-24 08:48:29
回答 1查看 55关注 0票数 0

我正在尝试得到光标的点在绘画部分,并简单地画一个椭圆形。不过没什么好运气的!

代码语言:javascript
复制
public void paint(Graphics g){
     Point ComponentPoint = PaintPanel.getLocationOnScreen();
     Point CursorPoint=   MouseInfo.getPointerInfo().getLocation(); //gets cursor point

     int ComPX =  ComponentPoint.x;
     int ComPY =  ComponentPoint.y;
     int CurPX =  CursorPoint.x;
     int CurPY =  CursorPoint.y;
     int FinalX = CurPX - ComPX;
     int FinalY =  CurPY - ComPY;
     g.drawOval(FinalX, FinalY, 20, 20);
}

private void PaintPanelMouseDragged(java.awt.event.MouseEvent evt) {                                        
    //when mouse is moved over paintpanel

    //PaintPanel.repaint();
    not working
}             

这就是没有画图方法的图像:

http://i.stack.imgur.com/VOyhr.png

EN

回答 1

Stack Overflow用户

发布于 2013-03-24 09:05:41

你不能像那样在paint方法中添加代码。YOu不会在paint方法中引用MouseInfo类,因为您无法控制何时调用paint()方法。您应该使用MouseListener和MouseMotionListner来执行自定义绘制。此外,自定义绘制不应该在paint方法中完成。

有关两种解决方案,请参阅Custom Painting Approaches

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15593871

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档