自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Java Swing編程:Applet和JApplet

開發(fā) 后端
雖然現(xiàn)在已經(jīng)不是Applet的時代了,applet過于強大導(dǎo)致客戶端的不安全性,還要求客戶端安裝JAVA運行環(huán)境,flash已經(jīng)成為web應(yīng)用的主流,現(xiàn)在每個游覽器基本都安裝了flash播放器,但Applet可是Java語言的開端。

雖然現(xiàn)在已經(jīng)不是Applet的時代了,applet過于強大導(dǎo)致客戶端的不安全性,還要求客戶端安裝JAVA運行環(huán)境,flash已經(jīng)成為web應(yīng)用的主流,現(xiàn)在每個游覽器基本都安裝了flash播放器,但Applet可是Java語言的開端。

Applet和一般的java程序最大區(qū)別就是沒有main函數(shù)入口,他是通過繼承Applet類。

這個類有5個特殊方法

init:初始化

start:啟動時執(zhí)行

stop:停止

destroy:于init相對

paint:繪制界面

下面看具體代碼,eg

  1. public class HelloApplet extends JApplet  
  2. {  
  3.  
  4.  
  5.     //初始化Applet的方法  
  6.     public void init()  
  7.     {  
  8.         setLayout(new FlowLayout());  
  9.         add(new JButton("XXX"));  
  10.         add(new JButton("YYY"));  
  11.     }  
  12.     //啟動Applet的方法  
  13.     public void start()  
  14.     {  
  15.         System.out.println("start方法");  
  16.     }  
  17.     //繪制Applet界面的方法  
  18.     public void paint(Graphics g)  
  19.     {  
  20.         super.paint(g);  
  21.         System.out.println("paint方法");  
  22.         g.drawLine(3 , 3 , 200 , 300);  
  23.     }  
  24.     //停止Applet的方法  
  25.     public void stop()  
  26.     {  
  27.         System.out.println("stop方法");  
  28.     }  
  29.     //銷毀Applet的方法  
  30.     public void destroy()  
  31.     {  
  32.         System.out.println("destroy方法");  
  33.     }  
  34.     public static void main(String[] args)  
  35.     {  
  36.         JFrame jf = new JFrame();  
  37.         JApplet panel = new HelloApplet();  
  38.         panel.setPreferredSize(new Dimension(300400));  
  39.         //顯式調(diào)用HelloApplet對象的init、start方法  
  40.         panel.init();  
  41.         panel.start();  
  42.         jf.add(panel);  
  43.         jf.pack();  
  44.         jf.setVisible(true);  
  45.     }  

其中我們把Applet當(dāng)成容器來使用,把他加入JFrame,用main作為入口運行。

放到網(wǎng)頁中就不需要main,但要通過網(wǎng)頁掉用

調(diào)用方法如下

  1. <applet codebase="." code="HelloApplet" width=400 height=300 name="HelloApplet">  
  2. <param name=name value="HelloApplet">  
  3. </applet> 

這個文件一般利用JDK目錄下的bin中的HtmlConverter來轉(zhuǎn)換,手動寫對不同游覽器還是挺吃力的。

下面再看個Applet動畫,eg

  1. public class ScApplet extends Applet  
  2. {  
  3.     final String testStr = "Java真好玩,學(xué)習(xí)很有趣!";  
  4.     //用于保存字符串下一次出現(xiàn)的座標(biāo)  
  5.     private int nextX;  
  6.     private int nextY;  
  7.     private Color nextColor;  
  8.     private Font nextFont;  
  9.     java.util.Random rand = new java.util.Random(System.currentTimeMillis());  
  10.     public void init()  
  11.     {  
  12.         Timer timer = new Timer(200 , new ActionListener()  
  13.         {  
  14.             public void actionPerformed(ActionEvent event)  
  15.             {  
  16.                 //隨機生成下一次座標(biāo)、顏色、字體大小  
  17.                 nextX = rand.nextInt(400);  
  18.                 nextY = rand.nextInt(300);  
  19.                 nextColor = new Color(rand.nextInt(255) , rand.nextInt(255) , rand.nextInt(255));  
  20.                 nextFont = new Font("Times" , Font.BOLD , rand.nextInt(60));  
  21.                 //強制重繪  
  22.                 repaint();  
  23.             }  
  24.         });  
  25.         timer.start();  
  26.     }  
  27.     //繪制Applet界面的方法  
  28.     public void paint(Graphics g)  
  29.     {  
  30.         g.setColor(nextColor);  
  31.         g.setFont(nextFont);  
  32.         g.drawString(testStr, nextX, nextY);  
  33.     }  
  34.  
  35.     public static void main(String[] args)  
  36.     {  
  37.         JFrame jf = new JFrame();  
  38.         ScApplet panel = new ScApplet();  
  39.         panel.setPreferredSize(new Dimension(400300));  
  40.         panel.init();  
  41.         panel.start();  
  42.         jf.add(panel);  
  43.         jf.pack();  
  44.         jf.setVisible(true);  
  45.     }  

大家可以把玩下,其實還是挺好玩的。

原文鏈接:http://blog.csdn.net/terryzero/article/details/3792261

【編輯推薦】

  1. Java Swing編程:拖放功能
  2. Java Swing編程:特殊容器
  3. Java Swing編程:基本組件
  4. Java Swing用戶界面設(shè)計:序
  5. 用Swing制作精美的圖層疊加圖
責(zé)任編輯:林師授 來源: terryzero的博客
相關(guān)推薦

2009-07-15 10:14:14

JApplet和JFrSwing

2012-01-17 14:09:54

JavaSwing

2012-01-17 13:41:34

JavaSwing

2012-01-17 14:05:29

JavaSwing

2012-01-17 13:58:17

JavaSwing

2012-01-17 13:46:55

JavaSwing

2012-01-17 13:16:34

JavaSwing

2009-07-16 16:46:39

Swing窗體

2009-07-08 18:16:02

Applet和Serv

2009-07-08 18:21:27

2012-01-17 14:01:33

JavaSwing

2010-09-17 10:16:26

Java Applet

2011-07-04 16:04:20

Applet

2009-06-11 08:59:35

2009-07-15 15:35:59

Swing程序Swing性能

2010-09-17 10:41:45

Java Applet

2009-07-09 10:05:55

2012-03-28 13:11:35

JavaEclipse

2009-07-07 17:23:08

Java Servle

2009-07-17 11:13:46

AWT和SwingSwing組件
點贊
收藏

51CTO技術(shù)棧公眾號