小白教程

 找回密码
 立即注册
小白教程 首页 系列教程 Java系列教程 查看内容

Java Applet基础

发布者: 小白教程



获得applet参数

下面的例子演示了如何使用一个applet响应来设置文件中指定的参数。该Applet显示了一个黑色棋盘图案和第二种颜色。

第二种颜色和每一列的大小通过文档中的applet的参数指定。

CheckerApplet 在init()方法里得到它的参数。也可以在paint()方法里得到它的参数。然而,在applet开始得到值并保存了设置,而不是每一次刷新的时候都得到值,这样是很方便,并且高效的。

applet viewer或者浏览器在applet每次运行的时候调用init()方法。在加载applet之后,Viewer立即调用init()方法(Applet.init()什么也没做),重写该方法的默认实现,添加一些自定义的初始化代码。

Applet.getParameter()方法通过给出参数名称得到参数值。如果得到的值是数字或者其他非字符数据,那么必须解析为字符串类型。

下例是CheckerApplet.java的梗概:

  1. import java.applet.*;
  2. import java.awt.*;
  3. public class CheckerApplet extends Applet
  4. {
  5. int squareSize = 50;// 初始化默认大小
  6. public void init () {}
  7. private void parseSquareSize (String param) {}
  8. private Color parseColor (String param) {}
  9. public void paint (Graphics g) {}
  10. }

下面是CheckerApplet类的init()方法和私有的parseSquareSize()方法:

  1. public void init ()
  2. {
  3. String squareSizeParam = getParameter ("squareSize");
  4. parseSquareSize (squareSizeParam);
  5. String colorParam = getParameter ("color");
  6. Color fg = parseColor (colorParam);
  7. setBackground (Color.black);
  8. setForeground (fg);
  9. }
  10. private void parseSquareSize (String param)
  11. {
  12. if (param == null) return;
  13. try {
  14. squareSize = Integer.parseInt (param);
  15. }
  16. catch (Exception e) {
  17. // 保留默认值
  18. }
  19. }

该applet调用parseSquareSize(),来解析squareSize参数。parseSquareSize()调用了库方法Integer. parseInt(),该方法将一个字符串解析为一个整数,当参数无效的时候,Integer.parseInt()抛出异常。

因此,parseSquareSize()方法也是捕获异常的,并不允许applet接受无效的输入。

Applet调用parseColor()方法将颜色参数解析为一个Color值。parseColor()方法做了一系列字符串的比较,来匹配参数的值和预定义颜色的名字。你需要实现这些方法来使applet工作。


指定applet参数

如下的例子是一个HTML文件,其中嵌入了CheckerApplet类。HTML文件通过使用标签的方法给applet指定了两个参数。

  1. <html>
  2. <title>Checkerboard Applet</title>
  3. <hr>
  4. <applet code="CheckerApplet.class" width="480" height="320">
  5. <param name="color" value="blue">
  6. <param name="squaresize" value="30">
  7. </applet>
  8. <hr>
  9. </html>

注意: 参数名字大小写不敏感。


应用程序转换成Applet

将图形化的Java应用程序(是指,使用AWT的应用程序和使用java程序启动器启动的程序)转换成嵌入在web页面里的applet是很简单的。

下面是将应用程序转换成applet的几个步骤:

  • 编写一个HTML页面,该页面带有能加载applet代码的标签。
  • 编写一个JApplet类的子类,将该类设置为public。否则,applet不能被加载。
  • 消除应用程序的main()方法。不要为应用程序构造框架窗口,因为你的应用程序要显示在浏览器中。
  • 将应用程序中框架窗口的构造方法里的初始化代码移到applet的init()方法中,你不必显示的构造applet对象,浏览器将通过调用init()方法来实例化一个对象。
  • 移除对setSize()方法的调用,对于applet来讲,大小已经通过HTML文件里的width和height参数设定好了。
  • 移除对 setDefaultCloseOperation()方法的调用。Applet不能被关闭,它随着浏览器的退出而终止。
  • 如果应用程序调用了setTitle()方法,消除对该方法的调用。applet不能有标题栏。(当然你可以给通过html的title标签给网页自身命名)
  • 不要调用setVisible(true),applet是自动显示的。


上一篇:Java 多线程编程下一篇:Java 文档注释

Archiver|手机版|小黑屋|小白教程 ( 粤ICP备20019910号 )

GMT+8, 2024-9-20 06:40 , Processed in 0.019122 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc. Template By 【未来科技】【 www.wekei.cn 】

返回顶部