利用双缓冲来DrawLine

/**
 * @(#)DrawLine.java
 *
 * DrawLine application
 *
 * @author
 * @version 1.00 2007/1/17
 */

import java.awt.*;
import java.awt.event.*;
public class DrawLine extends Frame
{
 private int begX;
 private int begY;
 private int endX;
 private int endY;
 Image oimg=null;
 Graphics og=null;
 public void paint(Graphics g)
 {
  /*
  Image img=this.getToolkit().getImage("..\\我要学习啦.gif");
  g.drawImage(img,100,100,this);
  if(oimg!=null)
  {
   //g.drawImage(oimg,0,0,this);
  }
  */
  g.drawImage(oimg,0,0,this);
  
 }
    public DrawLine()
    {
     setTitle("DrawLines");
     setSize(400,400);
     setVisible(true);
     Dimension d=this.getSize();
     oimg=this.createImage(d.width,d.height);
     og=oimg.getGraphics();
     addWindowListener(new WindowAdapter()
     {
      public void windowClosing(WindowEvent e)
      {
       e.getWindow().dispose();
      }
     });
     addMouseListener(new MouseAdapter()
     {
      
      public void mousePressed(MouseEvent e)
      {
       begX=e.getX();
       begY=e.getY();
      }
      public void mouseReleased(MouseEvent e)
      {
       endX=e.getX();
       endY=e.getY();
       Graphics g=getGraphics();
       g.setFont(new Font(null,Font.ITALIC|Font.BOLD,30));
       g.setColor(Color.RED);
       g.drawString(begX+","+begY,begX,begY);
       g.drawString(endX+","+endY,endX,endY);
       g.drawLine(begX,begY,endX,endY);
       og.setFont(new Font(null,Font.ITALIC|Font.BOLD,30));
       og.setColor(Color.RED);
       og.drawString(begX+","+begY,begX,begY);
       og.drawString(endX+","+endY,endX,endY);
       og.drawLine(begX,begY,endX,endY);
      
      }
     });
    }
    public static void main(String[] args) {
     
     // TODO, add your application code
     System.out.println("Hello World!");
     DrawLine mainFrame=new DrawLine();
     
     
    }
}

posted on 2007-01-20 14:26 大头剑客 阅读(1205) 评论(0)  编辑  收藏 所属分类: 学习笔记


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


网站导航:
 
<2024年11月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

导航

统计

公告

写字楼里写字间,写字间里程序员;
程序人员写程序,又拿程序换酒钱;
酒醒只在网上坐,酒醉还来网下眠;
酒醉酒醒日复日,网上网下年复年;
但愿老死电脑间,不愿鞠躬老板前;
奔驰宝马贵者趣,公交自行程序员;
别人笑我忒疯癫,我笑自己命太贱;
不见满街漂亮妹,哪个归得程序员.
不管前面是地雷阵还是万丈深渊,
我都将勇往直前,义无反顾,
鞠躬尽瘁,死而后已。
—— 朱镕基总理

常用链接

留言簿(1)

随笔档案

文章分类

文章档案

学习园地

最新随笔

搜索

积分与排名

最新评论