Rex Mao

分享java技术与生活

java画图程序技术小结(三) 画图的鼠标事件处理

画图的鼠标事件处理是画图程序中比较复杂的内容,这里只是简单介绍,有兴趣的可以看程序。
         Point p0,p1;//
记录拖拽画图的起点和终点
         p0=new Point();
         p1=new Point();
         //
鼠标按下,主要记录按下的点
         void jPaneDraw_mousePressed(MouseEvent e) {
            p0=new Point(e.getX(),e.getY());
}
         //
鼠标拖拽过程,根据不同的图形,画出拖拽过程的图形,复杂图形可以用矩形代替
         void jPaneDraw_mouseDragged(MouseEvent e) {
         switch(toolMode){
         case 0:{ //
直线
       p1.x = e.getX();
        p1.y = e.getY();
        g.setColor(col);
        g.drawLine(p0.x, p0.y, p1.x, p1.y);
        jPaneDraw.repaint();
        break;
   }
         ...//
其它图形
}
}
//
鼠标抬起,根据p0p1生成对应的图形
void jPaneDraw_mouseReleased(MouseEvent e) {
   switch(toolMode){
case 0:{ //
直线
         CusLine2D aCusShape = new CusLine2D(p0.x, p0.y, p1.x, p1.y); //
建立图形
         ...//
将图形加入到图形列表
         break;
}
         ...//
其它图形
}
         jPaneDraw.repaint();
}

posted on 2007-04-24 17:07 Rex Mao 阅读(2203) 评论(1)  编辑  收藏 所属分类: 技术

评论

# re: java画图程序技术小结(三) 画图的鼠标事件处理 2007-04-25 23:10 me

这是程序里最难的部分吗?我得多看看了   回复  更多评论   


只有注册用户登录后才能发表评论。


网站导航: