<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 63  文章 - 0  trackbacks - 0
    <2008年8月>
    272829303112
    3456789
    10111213141516
    17181920212223
    24252627282930
    31123456

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    圖像顯示

    1 使用Graphics.drawImage(Image img, int x, int y, ImageObserver observer)
    方法顯示圖像。


    2 使用Component.getToolkit.getImage(String path)語句獲得Image實例對象。

    例:
    package drawimage;

    import java.awt.Frame;
    import java.awt.Graphics;
    import java.awt.Image;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;

    public class DrawImage extends Frame
    {
        private static final long serialVersionUID = 1L;
     
        public DrawImage()
     {
       this.addWindowListener(new WindowAdapter()
          {
           public void windowClosing(WindowEvent e)
           {
            dispose();
            System.exit(0);
           }
       
           });
     }
     public static void main(String[] args)
     {
      System.out.println("Starting DrawImage.");
      DrawImage mainFrame = new DrawImage();
      Image img = mainFrame.getToolkit().getImage("love.jpg");
      
      mainFrame.setSize(400,400);
      mainFrame.setTitle("DrawImage");
      mainFrame.setVisible(true);
      Graphics g = mainFrame.getGraphics();
      while(!g.drawImage(img,150,150,mainFrame));
      
     

     }

    }

     

    圖像重畫


    package drawimage;

    import java.awt.Frame;
    import java.awt.Graphics;
    import java.awt.Image;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;

    public class DrawImage extends Frame
    {
     Image img = getToolkit().getImage("love.jpg");
        private static final long serialVersionUID = 1L;
     public void paint(Graphics g)
     {
      g.drawImage(img,0,0,this);
     }
        public DrawImage()
     {
       this.addWindowListener(new WindowAdapter()
          {
           public void windowClosing(WindowEvent e)
           {
            dispose();
            System.exit(0);
           }
       
           });
     }
     public static void main(String[] args)
     {
      System.out.println("Starting DrawImage.");
      DrawImage mainFrame = new DrawImage();
      
      mainFrame.setSize(400,400);
      mainFrame.setTitle("DrawImage");
      mainFrame.setVisible(true);
      /*Graphics g = mainFrame.getGraphics();
      while(!g.drawImage(img,150,150,mainFrame));
      */
     

     }

    }

     

     

     

     

     

     

     


    雙緩沖技術:

    1  Component.createImage方法創建內存Image對象
    2  在Image對象上進行繪制的結果就成了一幅圖像
    3  在Image對象上執行與組件表面同樣的繪制,Image
         對象中的圖像就是組件表面內容的復制,當組件重畫    時,只需要將內存中的Image對象在組件上畫出;

    package drawline;

    import java.awt.Color;
    import java.awt.Dimension;
    import java.awt.Font;
    import java.awt.Frame;
    import java.awt.Graphics;
    import java.awt.Image;
    import java.awt.event.MouseAdapter;
    import java.awt.event.MouseEvent;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;
    //import java.util.Enumeration;
    import java.util.Vector;


    public class DrawLine1 extends Frame
    {
     int orgX;
     int orgY;
     int endX;
     int endY;
     Image oimg = null;
     Graphics og = null;
     Vector<MyLine> vLines = new Vector<MyLine>();
     
     public void paint(Graphics g)
     {
      if(oimg != null)
      {
        g.drawImage(oimg,0,0,this);
      }
      /*g.setColor(Color.RED);
      g.setFont(new Font(null,Font.ITALIC|Font.BOLD,30));
      Enumeration<MyLine> e = vLines.elements();
      while(e.hasMoreElements())
      {
       MyLine line = (MyLine)e.nextElement();
          line.drawMe(g);
      }*/
      //g.drawLine(orgX, orgY, endX, endY);
     }
     private static final long serialVersionUID = 9004940250333651314L;

     public DrawLine1()
     {
      setSize(400,400);
      setTitle("Drawline");
      setVisible(true);
      
      Dimension d = getSize();
      oimg = createImage(d.width,d.height);
      og = oimg.getGraphics();
      
         addWindowListener(new WindowAdapter()
         {
          public void windowClosing(WindowEvent e) {
           dispose();
           System.exit(0);
          }
       
         });
      
      this.addMouseListener(new MouseAdapter()
      {
          
          
          public void mousePressed(MouseEvent e)
          {
           orgX = e.getX();
           orgY = e.getY();
           
          }
          public void mouseReleased(MouseEvent e)
          {
           endX = e.getX();
           endY = e.getY();
           Graphics g = getGraphics();
           g.setColor(Color.RED);
           g.setFont(new Font(null,Font.ITALIC|Font.BOLD,30));
           g.drawString(orgX + "," + orgY,orgX,orgY);
           g.drawString(e.getX() + "," + e.getY(), e.getX(),e.getY());
           g.drawLine(orgX, orgY, e.getX(),e.getY());
           
           og.setColor(Color.RED);
           og.setFont(new Font(null,Font.ITALIC|Font.BOLD,30));
           og.drawString(orgX + "," + orgY,orgX,orgY);
           og.drawString(e.getX() + "," + e.getY(), e.getX(),e.getY());
           og.drawLine(orgX, orgY, e.getX(),e.getY());
           /*vLines.add(new MyLine(orgX,orgY,endX,endY));
           repaint();*/
          }//為什么用getGraphics().setColor(Color.RED)是不用導java.awt.Graphics包
          //Enumeration<MyLine>???????????????????????????
          
          
         });
     }

     public static void main( String[] args) {
      System.out.println("String DrawLine");
       new DrawLine1();
      
      
      
     }
    }

    //構建主框架對象時是先調用paint()還是構造函數

     

    posted on 2008-08-10 21:37 lanxin1020 閱讀(178) 評論(0)  編輯  收藏 所屬分類: j2se
    主站蜘蛛池模板: 免费国产在线观看老王影院| 亚洲精品在线免费观看视频 | 亚洲一卡2卡三卡4卡无卡下载| 日日麻批免费40分钟无码| 亚洲综合亚洲综合网成人| 美女视频黄视大全视频免费的| 国产午夜无码视频免费网站| 亚洲国产欧洲综合997久久| 成年女人喷潮毛片免费播放| 亚洲精华液一二三产区| 国产免费直播在线观看视频| 亚洲AV无码AV日韩AV网站| 日本一道综合久久aⅴ免费| 边摸边吃奶边做爽免费视频网站| 亚洲国产精品毛片av不卡在线| 一区二区三区在线观看免费| 国产成人A人亚洲精品无码| 久久久久久AV无码免费网站| 亚洲最大黄色网站| 免费黄色小视频网站| 九九免费精品视频在这里| 亚洲女初尝黑人巨高清| 少妇人妻偷人精品免费视频| 亚洲第一页在线观看| 美女被免费视频网站a国产| www永久免费视频| 亚洲日本中文字幕区| 成人午夜免费福利| 一级中文字幕乱码免费| 亚洲国产成人久久综合一| 成年在线观看网站免费| 四虎影视久久久免费观看| 亚洲av一综合av一区| 一个人在线观看视频免费| 一级成人毛片免费观看| 亚洲高清在线视频| 在线a人片天堂免费观看高清| 精品国产免费一区二区三区| 亚洲人成网站在线观看播放动漫 | 5555在线播放免费播放| 鲁死你资源站亚洲av|