<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 閱讀(184) 評論(0)  編輯  收藏 所屬分類: j2se
    主站蜘蛛池模板: 免费在线观看一区| 久久亚洲中文无码咪咪爱| 中文毛片无遮挡高清免费| 亚洲av日韩片在线观看| 久久精品国产精品亚洲人人| 国产午夜亚洲精品不卡电影| 亚洲AV中文无码乱人伦在线视色| 亚洲国产精品无码第一区二区三区| 久久国产免费直播| 免费高清av一区二区三区| 亚洲国产精品网站在线播放| 可以免费观看一级毛片黄a| 久久精品国产亚洲AV电影| 无码日韩精品一区二区三区免费| 亚洲综合视频在线| h视频在线观看免费完整版| 亚洲成a人片在线网站| 成年性生交大片免费看| 麻豆亚洲AV成人无码久久精品 | 国产亚洲色婷婷久久99精品| 国产精品亚洲专区在线观看| 久久精品电影免费动漫| 亚洲午夜在线电影| 成人人观看的免费毛片| 亚洲性色高清完整版在线观看| 97在线观免费视频观看 | 色噜噜亚洲男人的天堂| 国产国产人免费视频成69大陆| 中文字幕亚洲综合精品一区| 你懂的网址免费国产| 久久久无码精品亚洲日韩按摩| 国产人在线成免费视频| 亚洲国产成人久久77| 成人au免费视频影院| 国产精品成人啪精品视频免费| 免费夜色污私人影院在线观看| a级日本高清免费看| 亚洲乱码在线观看| 亚洲国产日韩在线观频| 亚洲毛片在线免费观看| 日韩毛片免费一二三|