利用雙緩沖來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 大頭劍客 閱讀(1212) 評論(0)  編輯  收藏 所屬分類: 學習筆記

          <2025年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          導航

          統計

          公告

          寫字樓里寫字間,寫字間里程序員;
          程序人員寫程序,又拿程序換酒錢;
          酒醒只在網上坐,酒醉還來網下眠;
          酒醉酒醒日復日,網上網下年復年;
          但愿老死電腦間,不愿鞠躬老板前;
          奔馳寶馬貴者趣,公交自行程序員;
          別人笑我忒瘋癲,我笑自己命太賤;
          不見滿街漂亮妹,哪個歸得程序員.
          不管前面是地雷陣還是萬丈深淵,
          我都將勇往直前,義無反顧,
          鞠躬盡瘁,死而后已。
          —— 朱镕基總理

          常用鏈接

          留言簿(1)

          隨筆檔案

          文章分類

          文章檔案

          學習園地

          最新隨筆

          搜索

          積分與排名

          最新評論

          主站蜘蛛池模板: 苏尼特左旗| 崇礼县| 洛扎县| 江口县| 弋阳县| 关岭| 大埔县| 盐源县| 扬中市| 绥宁县| 颍上县| 澜沧| 东丰县| 沿河| 鄂尔多斯市| 荥经县| 涞水县| 嵩明县| 策勒县| 宝清县| 黑龙江省| 鄢陵县| 新兴县| 扶绥县| 廉江市| 衢州市| 普洱| 山丹县| 从江县| 腾冲县| 闸北区| 沙湾县| 蕲春县| 泗洪县| 乐至县| 丰台区| 剑阁县| 阿拉善左旗| 交口县| 汕头市| 磴口县|