java firstapplet联机文档翻译

翻译 2004年08月07日 12:14:00

                                                             教程:创建一个Applet

  本教程可以使你通过JBuilder的集成开发环境来创建一个AWT applet。想要了解更多的IDE和它的相关组件,请查阅帮助菜单中的“JBuilder environment”。

 

本教程展示了:

1 、如何创建一个applet项目

2 、使用Applet 向导来创建AWT applet

3 、编译和运行applet

4 、定制applet程序的用户界面

5 、添加AWT组件,入ChoiceLabelButtonEdit和源代码

6 、配置applet

7 、修改html文档

8 、从命令行运行已配置的applet

9 、测试applet

 

整个教程作为一个例子给您提供方便。如果您要查看源代码或者运行程序,打开/samples/Tutorials/FirstApplet 目录下FirstApplet.jpx。由于JBuilder的例子对于用户来说是只读的,,您可以将整个例子目录拷贝到其他的目录下以获得读/写的权限。

 

在开始读本教程之前,请您人之阅读概要,它讨论了applet的一些重要问题。

 

JBuilder Quick Tips 的教程部分有一些关于查看和打印教程的有用信息。在JBuilder Quick Tips 中还有关于使用JBuilder的特征来使其对于初学者更易用。本教程的文档和所以其他JBuilder的文档,请查看Learning about JBuilder 章节的"Documentation conventions"

 

概述:

最重要的一点要记住,当你设计applets时要考虑到浏览器对Java的支持的限制(依赖于你使用的浏览器类型)。在本教程中,你将用JDK1.3 AWT 组件来设计你的applet,这写组件通常被大多数的浏览器所支持,例如Netscape Navigator Microsoft Internet Explorer。然而,如果你想要设计一个使用了swing组件的applet,你必须要考虑到你的浏览器所支持java的能力。通常,你可以从工具里找到浏览器对java applets的支持信息,也许你更喜欢从netscapeIE的帮助菜单中找到。最保险的设计applet方法是使用浏览器所支持的awt 组件和jdk

 

注意:更多关于在JBuild中运行applets的信息,请查阅Web Application Developer's Guide "Working with applets"中的"Running applets"

 

在本教程中创建的GoodEvening applet 包含了一个下拉的语言选择列表框。当你选定一种语言时,例如德语,在选择框下的面板中将会显示德语的“Good Evening”即“Guten Abend”。当你完成本教程时,你用JBuilder applet viewer查看,将会得到类似于下面图示的的applet

http://blog.csdn.net/yuxiaojie/gallery/image/8011.aspx

当你在Sun's applet viewer中点击stop时,将会得到下图:

http://blog.csdn.net/yuxiaojie/gallery/image/8012.aspx

想要得到所有的applet代码,可以转到教程的末尾。想要进一步的深入了解appletdeployment,请查阅Building Applications with JBuilder.中的"Working with applets" "Deploying Java programs" i

 

步骤1 :创建项目

在开始教程之前,请阅读概要中所讨论的关于浏览器支持所支持的appletJDK 版本和applet组件。

在开始创建你的applet之前,你必须先要有一个项目来存储它。Project wizard 可以帮你创建:

1、  选择File|New Project 来打开Project wizard

2、  Project wizard步骤一中的相应字段做如下改动:

A. 在名字字段中输入FirstApplet

注意:在你输入project名字的时候,同时在Directory字段也自动的输入了。默认地,JBulider用这个项目的名字来创建项目的路径名和类的package名。更多关于home directory的信息,可以查阅“JBuilder projects”.

B. Type列表框中选择jpx

C. Generate Project Notes File的选项上打钩     

当你选择这个选项时,Project wizrd会为你的project创建一个HTML 文档并把它加入project中。

接受步骤一中其他的默认选项。

http://blog.csdn.net/yuxiaojie/gallery/image/8013.aspx

1、  单击Next进入步骤二。

http://blog.csdn.net/yuxiaojie/gallery/image/8014.aspx

1、  接受步骤二中所有的默认路径,并且注意compiled class files, project files, and source files分别被存储在哪些地方。更多的关于JBuilder如何存储文件的信息,请查阅“Managing Paths”。

提示:如果你喜欢用早版本的JDK来创建applet,可以在此步骤来修改。虽然JBuilder个人版不支持JDK的切换,但是你可以通过在配置JDKs对话框(Tools§Configure JDKs)编辑已经存在的JDK。对于JDK1.1.x,你需要下载JDK1.1.xspecific半点的JFC

2、  点击Next,进入步骤三。

3、  在步骤三的相应字段做如下改动:

A. 接受EncodingAutomatic Source Packages的默认设置。

B. class Javadoc fieldsTitle field中输入Good Evening

C. 在相应的选项中输入你的namecompany name、和applet description

Note: class Javadoc fields中的内容将会出现在project html文档里面已经作为源代码的头部的注释。

http://blog.csdn.net/yuxiaojie/gallery/image/8015.aspx

1、  点击Finish按钮。

向导已经为你创建了一个项目文件和说明文件,在project面板中可以看见FirstApplet.jpx FirstApplet.html

9、双击HTML文件就可以在内容面板中看见project notes

http://blog.csdn.net/yuxiaojie/gallery/image/8016.aspx

步骤二:生成源文件

Applet 向导创建了一个a.java的文件和一个applet HTML文件,并且把它们放在你刚才所创建的项目中。

顺着一些步骤来产生applet的这些源文件:

1、  选择 File|new 并且选中Web标签。

2、  双击Applet图标来打开Applet向导。

3、  接受默认的package name firstapplet,向导默认地从project nameFirstApplet.jpx)中得到当成package name

4、  Class Name field.中输入GoodEveningApplet

这里对于大小写是敏感的。

Note:完整的类名 (package name + class name) firstapplet.GoodEveningApplet.class

5、  接受默认的基类,java.applet.Applet

Caution:如果你用javax.swing.JApplet来创建你的applet,那么该applet将不能运行在大多数的浏览器上。在本文档写的时候,swing仍然没有被web浏览器所支持。参考概述中的详细信息。

6、  选择Generate Standard Methods.

步骤一的的页面设置应该是这样的:

http://blog.csdn.net/yuxiaojie/gallery/image/8017.aspx

1、  next进入步骤二。

   在这一步骤中,你可以添加applet所需要的参数。向导将会为appletHTML文档在 tags中添加 tags,并且在源代码中插入相应的出来参数代码。Applet的参数,等价于命令行方式的应用程序的arguments,允许你定制你的applet。本教程不需要添加任何的参数。

?? 参考"Defining and using parameters"

http://www.java.sun.com/docs/books/tutorial/applet/appletsonly/param.html

2、? 点击next进入applet向导的第三步

3、? 在步骤三做如下更改:

A. 接受默认选项,生成HTML页面。

当你选择这个选项,调用appletHTML文档将会被生成。这个HTML文档包含有 标记和其他属性。

B. Title Field中输入Good Evening HTML Page

这个标题将在applet运行时的web浏览器的窗口中显示。

C. 接受其他属性的默认设置。

Applet向导的步骤三如下图所示:

http://blog.csdn.net/yuxiaojie/gallery/image/8017.aspx

HTML文档的 标记包含如下属性:

Codebase

这个属性选项指明了浏览器找寻任何和applet HTML 文档有关的.class文件的相对路径。Codebase的值为"." 表明与HTML有关的所有文件都在和它相同的目录下。当class文件和HTML文件不在同一目录下时,Codebase属性是必需的。

Code

这个属性是必需的,它会被JBuilderApplet向导自动添加,它即为完整的class name (package name + class name) applet class 包含有init() 方法。你可以在生成的HTML中查看。在这个例子中,the fully qualified class name 就是 firstapplet.GoodEveningApplet.class

Archive

这是一个可选的属性,并不被包含在applet向导生成的代码中,当applet被配置在JARZIP或者CAB文件时,它就必需了。 Archive files 必须在codebase所指明的目录下。

Name

这是一个可选的属性,表明了applet的名字。

width/height

这是一个必选的属性,它决定了applet显示区域的宽和高,以象素来度量。

hspace/vspace

这两个可选属性决定了applet四周水平(左右的边距)和垂直(上下的边距)的填充距离。

Align

这个可选的属性决定了appletHTML页面中的对齐方式。

重点:codebase, code, archive, name的值必须在引号的中而且是大小写敏感的。详见Web Application Developer's Guide "Working with applets"中的" tag attributes" 主题。

1、? 点击完成来结束Applet向导。注意到GoodEveningApplet.java GoodEveningApplet.html已经被创建并且添加到项目中。GoodEveningApplet.java 已经在内容面板中

?Note: 如果在项目属性对话框中(Project|Project Properties)Source Package DiscoveryCompilation选项被允许,一个以firstapplet命名的automatic source package node 会出现在项目面板中。

http://blog.csdn.net/yuxiaojie/gallery/image/8018.aspx

现在查看两个文件的源代码。

查看 GoodEveningApplet.java 注意到一些几点

* 它包含了init() 方法。包含appletHTML文档必须调用含有init()方法的类, 来使applet运行。

* 代码的第一行是package name firstapplet 。根据Java的惯例类文件被保存在了firstapplet 目录下了。

*声明了导入的是AWT packages, 而不是 Swing

import java.awt.*;

import java.awt.event.*;

import java.applet.*;

?

2、双击项目面板里的GoodEveningApplet.html 并且选择内容面板底部的Source标签来查看源代码。请注意向导插入代码值firstapplet.GoodEveningApplet.class

3、选择File|Save All 来保存源代码和项目文件。

Note: JBuilder默认地将源文件保存在

//jbproject/FirstApplet/src/firstapplet/

?

applet HTML 文件保存在classes directory:

//jbproject/FirstApplet/classes/

?

类文件,在编译以后,被保存在输出目录下:

//jbproject/FirstApplet/classes/firstapplet/

?

JBuilder 总是按照package的层次关系来保存文件的。在这个例子中,代码和class文件被保存在代码和输出路径下的一个名为firstapplet 路径中,体现了firstapplet package 的结构。这些路径可以通过项目向导来进行设置,在项目的属性对话框中查看。在本教程中,你可以接受JBuilder项目向导第二步的默认设置。

?

步骤三:编译和运行你的applet

?

现在开始编译运行你的applet。编译就是运行Java编译器的一个过程。编译器,就是把源代码翻译成Java字节代码,产生.class文件。

?

重点:要想知道关于在JBuilder中运行JDK 1.1.x and 1.2/1.3 applets的信息,可以查阅Web Application Developer's Guide "Working with applets""Running applets" 主题。

1、选择Run|Run Project,或者点击运行按钮来编译和运行applet。运行菜单和运行按钮可以使applet运行JBuilderapplet viewer中,AppletTestbed

提示:你也可以右击项目面板的GoodEveningApplet.html 然后选择 Run。这样就可以使你的applet运行在Sun's appletviewer 命令行工具中。

?

目前,applet 窗口是空的,因为applet还没有有一个用户界面。

?

当你运行你的applet时,appBrowser底部的消息面板中将会显示任何编译时发现的错误。修改错误,并且再次运行applet

?

你的applet将在被显示在JBuilder's AppletTestbed中,如下图所示:

http://blog.csdn.net/yuxiaojie/gallery/image/8019.aspx

你可以通过Runtime Properties dialog box applet tab来改变applet运行的设置。你可以选择Project|Project Properties来打开 Project Properties dialog box 选择Run的标签,在Run页面中选中GoodEveningApplet点击Edit Applet tab中的设置控制了工具条中运行菜单和运行图标的行为。选择Main Class来使你的applet运行在JBuilder's AppletTestbed中。选择HTML来使你的程序运行在 Sun's appletviewer中。当你使用Applet wizard 来创建你的applet, Main Class option 将被设置为默认值。

Important: 运行在HTML 文件中的Applets,将调用类中的init() 方法,而不是直接运行 .java 文件。任何试图运行 .java 文件的结果都会产生一个错误信息(除非在applet向导的步骤一中你选择了 Can Run Standalone 选项)

java.lang.NoSuchMethodError: main

Exception in thread "main"

??????????????????????? 2、选择Exit来关闭"Good Evening" applet

3、右击消息面板的GoodEveningApplet 标签,选择移除"GoodEveningApplet" 来关闭运行中的消息。

?

步骤四:定制你的apllet用户界面

到目前为止,applet wizard已经为你产生了一个applet外壳,你可以用各种各样的组件来定制它的界面,按照以下步骤:

1.? 选择内容面板顶部GoodEveningApplet.java文件标签。

2.? 点击内容面板底部的Design标签切换至设计视图。

在内容面板中会出现UI designer,在它的上部是组件面板,右部是组件的属性监视器。你可以用组件面板来给你的UI添加组件,通过属性监视器来修改属性,并且给你的代码添加事件触发。现在,面板的上包含了由UI, Menu, and Other.而成的组件树。

你可以通过Runtime Properties dialog box applet tab来改变applet运行的设置。你可以选择Project|Project Properties来打开 Project Properties dialog box 选择Run的标签,在Run页面中选中GoodEveningApplet点击Edit Applet tab中的设置控制了工具条中运行菜单和运行图标的行为。选择Main Class来使你的applet运行在JBuilder's AppletTestbed中。选择HTML来使你的程序运行在 Sun's appletviewer中。当你使用Applet wizard 来创建你的applet, Main Class option 将被设置为默认值。

Important: 运行在HTML 文件中的Applets,将调用类中的init() 方法,而不是直接运行 .java 文件。任何试图运行 .java 文件的结果都会产生一个错误信息(除非在applet向导的步骤一中你选择了 Can Run Standalone 选项)

java.lang.NoSuchMethodError: main

Exception in thread "main"

??????????????????????? 2、选择Exit来关闭"Good Evening" applet

3、右击消息面板的GoodEveningApplet 标签,选择移除"GoodEveningApplet" 来关闭运行中的消息。

?

步骤四:定制你的apllet用户界面

到目前为止,applet wizard已经为你产生了一个applet外壳,你可以用各种各样的组件来定制它的界面,按照以下步骤:

1.? 选择内容面板顶部GoodEveningApplet.java文件标签。

2.? 点击内容面板底部的Design标签切换至设计视图。

在内容面板中会出现UI designer,在它的上部是组件面板,右部是组件的属性监视器。你可以用组件面板来给你的UI添加组件,通过属性监视器来修改属性,并且给你的代码添加事件触发。现在,面板的上包含了由UI, Menu, and Other.而成的组件树。

http://blog.csdn.net/yuxiaojie/gallery/image/8020.aspx

3、将属性监视器中的layout由默认改为BorderLayout

??????????? BorderLayout 以区域的方式来安排组件,命名为North, South, East, West, Center。你可以用这种方式来使一个组件位于容器的一个或者多个边缘以及用一个组件来填塞容器的中间。它也可以允许你用一个组件来填满整个容器。

??????????? 注意:在你选中属性监视器中下拉框中的的XYLayout(一种用户自定义的排列方式),JBuilder将会自动在代码中添加一条声明com.borland.jbcl.layout.*。这条重要的声明并不会在配置之前因为你选择其它一种更简易的布局方式而删除。你配置的applet程序将不能够运行,直到你将这句声明删除。因为applet将会去寻找jbcl layout classes来导入import。你需要在手动的删除浙江声明。

JBuilder's UI designer 会对每一给容器使用一种默认的布局,通常使awt父类容器的布局。在 Java AWT, 所有的面板都用 FlowLayout作为默认值。点击组件面板树的扩展图标,可以看到面板的布局管理器。布局管理器以一个项的形式显示在父类容器的的下面。

http://blog.csdn.net/yuxiaojie/gallery/image/8021.aspx

选择UI designer组件面板中的AWT 标签

你也许需要向右滚动组件面板才能找到AWT标签。不同与Swing组件,AWT 组件被大多数的浏览器所支持。

注意:UI designer 默认地总是打开Swing。你很有可能错误地选择了Swing 组件,这样你的applet件不能够运行在浏览器中。请小心地从组件面板的AWT页面中选择组件。

http://blog.csdn.net/yuxiaojie/gallery/image/8022.aspx

5、在面板中添加两个子面板。顶部的面板将放;一个下拉列表框,用来选择语言,以及一个用来说明此列表框的Label。底部的子面板用来放“Good Evening”的不同语言表示。

A.按住Shift然后再点击AWT 面板中的组件, java.awt.Panel

按住Shift可以使你一次性的下拉多个相同的组件,而不必每次都在组件面板中选择一个组件然后再放置在UI中。现在你可以添加两个子面板。

提示:将鼠标停留在组件上一会儿,就可以看见该组件的名称。

B.双击组件树中的this,然后添加两个panelpanel1 panel2 将会被添加在组件树的this的下面。

C.点击组件面板左边的选择工具,可以取消组件选择。

D.在属性监视器中核查panelconstraints属性。顶部的panel 应该位于North,底部的panel 应该位于Center。核对constraints属性

a.选中组件树或者UI designer中的一个panel 。当designer中的一个组件被选中时,在边角上会出现边界。

b.确认属性监视器中的constraints属性中,顶部的panel设置为North,底部的panel设置为Center。如果不是,可以点击 constraints 列的右部,从下拉的列表中选择所需的属性。

E.重新命名顶部的panelupper

a.选中顶部的panel,双击属性监视器name属性右边的列。

b.输入“upper”,按确认。

提示:你也可以右键点击属性树中的组件,选择菜单中的Rename

F.为底部的panel命名。

?

http://blog.csdn.net/yuxiaojie/gallery/image/8023.aspx

6、将upper panel的背景色改为orange

??????????? A.选中upper panel

B.点击background属性的右边那一列。

C.点击向下的箭头,打开颜色的下拉列表,选择orange

7、将lower panel的背景色改为 Magenta

8、将lower layout属性改为CardLayout

CardLayout panel将包含5 panels, 每一种对应于"Good Evening"种的一种语言。 CardLayout 将组件(通常是panels)一个个地堞起来放置,就像一叠卡片一样。你一次只能看见一个,你可以通过其它的控件来选择哪一个面板放置在顶部,达到浏览的目的。CardLayout 通常伴随这一个控制的组件,如一个check box ?或者是list。控制组件的状态决定的了CardLayout 将要显示什么组件。用户可以通过在UI上进行选择来作出决定。

1、? 按住Shiftlower panel添加5panels。每一个panel将用一种不同的语言来显示 "Good Evening"。选择“选择工具”来取消多选。

提示:如果你把组件放置在错误的位置,在组件树中选中它,按下Delete键。然后重新添加。

2、? 将新添加的panels 1 5 都改为 BorderLayout.

a)???????? 按住Shift或者Ctrl选中。??

b)??????? layout属性改为 BorderLayout。现在5panel都有了BorderLayout属性。

c)??????? 选中组键树或者UI designer中的其他属性来取消对这些panel的选择。

3、? 5panel的背景色都改得各不相同。

提示:点击属性监视器右边的列,并且点击下拉框右边的带小点的按钮来打开背景色对话框。可以使用滑动条来来创建颜色。

4、? 保存文件和整个项目。

5、? 右击GoodEveningApplet.html 选择 Run using "GoodEveningApplet." 。当applet运行在 Sun's appletviewer中时,你仅仅看见 upper CardLayout的顶部panel 在你添加了下拉框后并且添加了列表选择事件后,其余的语言面板就可以显示出来了。

6、? 退出applet

7、? 右击GoodEveningApplet 标签关闭消息面板并且选择Remove "GoodEveningApplet"

?

步骤五:为你的applet添加AWT组件

现在你在顶部的panel添加一个LabelChoice控件。

1.? 选择组件面板的 AWT 标签,并选择Choice组件。

2.? 将组件放置在顶部橙色的面板上,可以使用以下两种方法之一:

a)???????? 点击组件树中upper pannel

b)??????? 点击 UI designer.中的upper panel

现在Choice1 被添加在组件树的upper标签下。

3.? 选择Label控件,并将它放置在Choice控件的左边。

现在Label也被添加到组件树的upper标签下。

4.? 选中label1并沿着以下步骤进行:

a)???????? 双击text属性右边的列,使已经存在的文本呈现高亮度。

b)??????? 输入“Select a language”然后按下确认, "Select a language" 将会出现在Choice控件旁边的label控件里。

c)??????? 点击font属性来修改字体,点击右边的带点按钮可以打开Font对话框。

d)??????? Bold改为20

e)???????? 改变文本的前景色,点击下拉的箭头,选择blue

你的设计应该如下所示:

?

http://blog.csdn.net/yuxiaojie/gallery/image/8024.aspx

5、按住Shift选择 AWT label 组件,为panel 15分别添加一个label控件

每一个Label都将显示 "Good Evening" 的一种语言形式,记住点击组件面板左边的选择工具可以取消多选。

6、将每一个Label改为"Good Evening"的一种语言表示。首先,选择组件树中的每一个子面板下的label控件,在text属性里输入"Good Evening" ,按照以下的对应关系给每一个label赋值:

l???????? label2: Good Evening (English)

l???????? label3: Guten Abend (German)

l???????? label4: Oodgay vening eay (Pig Latin)

l???????? ?label5: God Kväll (Swedish)

l???????? label6: G'day, Mate (Australian)

7、按住Ctrllabel2label6选中,将它们的设置为Boldfont size设置为24。将label的前景色设置为黑色。点击组件树或者UI designer中的组件来取消多选。

8、通过改变属性监视器中constraints的属性来改变每一个label的位置:

l???????? label2: North

l???????? label3: South

l???????? label4: East

l???????? label5: West

l???????? label6: Center

注意:注意在BorderLayout面板中每一个label的位置, Center将填充整个面板,而North, South, East, West仅仅是一部分。

9、将panel 5的布局方式改为FlowLayout, upper panel的布局相同。

注意到"G'day, Mate" label 移动顶部面板的中部,当你想要组件一列列的排列时,FlowLayout 是一个好的布局选择。

?

接下来,你要添加一个按钮,FlowLayout 布局方式将会将它和label安排在一列中。FlowLayout 将组件从左到右地安排在同一列。当一列排满了,其余的组件就被移到新的一列。

10、选择AWT Button组件,并把它放置"G'day, Mate" label.的左边。

试着将button移动到designer的另一个地方。FlowLayout总是将其移动和label同一行的位置上,你设计applet应该类似与下图:

http://blog.csdn.net/yuxiaojie/gallery/image/8025.aspx

10、Choose File|Save All to save the project.选择File|Save All来保存整个项目。

?

步骤6 :编辑你的源代码

在这一步中,你将给drop-down 添加语言列表,然后,添加事件来使语言面板和choice组件连接在一起。

1、? 按以下步骤在init()方法中为drop-down list添加语言:

a)???????? 点击内容面板中的Source 标签来切换至代码编辑器。

b)??????? 选中左部面板中的init() 方法init() 方法的代码将会高亮度在编辑器中显示。

提示:点击左部结构化的面板并且输入方法的名字可以寻找一个方法。

c 将光标移到try/catch模块前和{后,输入回车来创建新的一空白行。

提示:选择View|Show All 可以展开编辑器,并且隐藏项目面板和结构化的面板。

D

c)??????? init() 方法添加以下代码:

//Initialize the applet

? public void init() {

??? choice1.addItem("English");

??? choice1.addItem("German");

??? choice1.addItem("Pig Latin");

??? choice1.addItem("Swedish");

??? choice1.addItem("Australian");

??? try {

????? jbInit();

??? }

??? catch(Exception e) {

????? e.printStackTrace();

??? }

? }

提示:可以使用CodeInsight 来帮你完成代码。输入choice1. 然后等待一段时间或者按下Ctrl+spacebar 就会出现弹出窗口来显示调用方法。请保证在choice1后出入了dot.)使用箭头来从弹出框中选择addItem(String)按下回车。你可以在Editor Options dialog box (Tools|Editor Options|CodeInsight)配置 CodeInsight

http://blog.csdn.net/yuxiaojie/gallery/image/8026.aspx

如果在你的代码中出现了语法错误,在结构化的面板中将会出现一个错误文件夹,打开文件夹,选中错误信息,在你的源代码中错误部分就会以高亮度显示。

?

接下来,你要将事件和语言选择连接起来。当你选择drop-down list 中的一种语言时,cardLayout panel 中的"Good Evening"将以不同的语言显示出来。

?

1、? 沿着以下步骤来连接choice list 事件:

a)???????? 返回到UI designer

b)??????? 选择组件树中的upper panel下的 choice1

c)??????? 选择属性监视器中的Events标签

d)??????? 双击itemStateChanged 事件

JBuilder 将产生该方法的代码,并且把光标移动到源代码中插入方法处。

void choice1_itemStateChanged(ItemEvent e) {

???? }

e)??? 添加以下代码用来将语言选择和语言面板相连接:

void choice1_itemStateChanged(ItemEvent e) {

??? if ("English".equals(choice1.getSelectedItem())){

????? cardLayout1.show(lower, "panel1");

??? }

??? else if ("German".equals(choice1.getSelectedItem())){

????? cardLayout1.show(lower, "panel2");

??? }

??? else if ("Pig Latin".equals(choice1.getSelectedItem())){

????? cardLayout1.show(lower, "panel3");

??? }

??? else if ("Swedish".equals(choice1.getSelectedItem())){

????? cardLayout1.show(lower, "panel4");

??? }

??? else if ("Australian".equals(choice1.getSelectedItem())){

????? cardLayout1.show(lower, "panel5");

??? }

? }

提示:你可以泳代码模板来产生代码。输入if然后按下Ctrl+J 来获得代码模板的弹出框。用方向键来作出选择。选择if-else if 模块,按下回车,这样代码就产生了:

if () {

???????

? }

? else if{

???

? }?

2、? 选择File|Save All

3、? 右击项目面板中的GoodEveningApplet.html ,选择"GoodEveningApplet."来运行applet

?"Good Evening" applet 运行在Sun's appletviewer中:

http://blog.csdn.net/yuxiaojie/gallery/image/8027.aspx

如果有任何的错误信息,它们都会出现在appBrowser底部的消息面板中。选择一个错误信息,然后按下F1可以获得帮助。选择错误信息,使他们在编辑器中呈高亮度显示。也许有的时候,错误可能出现在高亮度行之前或者之后,更正错误,保存项目,重新运行applet

1、? 测试drop-down list。在列表中的语言选择将会和语言面板中的语言相匹配。

2、? 退出applet

现在为panel5button1添加Button的标签和button的事件。当你点击按钮,label6"G'day, Mate" 文字颜色将会变为红色。

1、? 按以下步骤添加Button的标签和button的事件:

a)???????? 切换至UI designer

b)??????? 选择panel5上的button1 然后将Label属性由button1 改为 Push Me。按下确认。注意到按钮将会自动调整大小来适应文字。

c)??????? 选择属性监视器的Events标签,来定义当按钮被按下时将会出现什么事件。

d)??????? 双击ActionPerformed事件:

JBuilder将会切换至编辑器中为ActionPerformed 事件添加的代码的骨架部分。

提示:双击designer中的button按钮也可以达到同样的效果。

现在输入代码,定义按钮事件,使得"G'day, Mate" 变红。

e 输入以下代码:

void button1_actionPerformed(ActionEvent e) {

? label6.setForeground(new Color(255,0,0));

}

2、? 保存项目。

3、? 运行applet 然后选择drop-down list中的"Australian" 。点击 "Push Me"按钮。"G'day, Mate" 将会变红。

你的applet应该类似于下图:

http://blog.csdn.net/yuxiaojie/gallery/image/8028.aspx

1、? 退出applet

?

步骤七:配置你的applet

配置一个Java applet就是将各种各样的Java class 文件,image文件,和其他applet所需要的文件大包,并且将它们和applet HTML文件一起复制到服务器或者客户端的某个地方,以便它们能够被执行。你可以单独的传送它们,也可一将它们以压缩或者未压缩过的档案文件来传送。JAR files, Java archive files,都是最常用的形式。JAR files 具有文件小和下载速度快的优点。

当你配置applet时,请记住以下几点:

l???????? 在配置前保存并且编译你的项目。

l???????? 打开GoodEveningApplet.html ,点击Source 标签,回顾以下几步:

n???????? 核对code属性是不是fully qualified class name,包括package name。在本例中,code的值应该是firstappplet.GoodEveningApplet.class.

n???????? 核对codebase 属性是不是指明了和HTML文件正确的相对路径。在本例中,codebase 值是 ".", 因为包含class file JAR file将会和HTML文件在同一目录下。

l???????? 保持现有的目录结构。在本例中,GoodEveningApplet.class firstapplet 目录下,反映了包结构 firstapplet/GoodEveningApplet.class。如果你要配置JAR file, 核对文件的目录结构使之相匹配

l???????? 保持现有的目录结构。在本例中,GoodEveningApplet.class firstapplet 目录下,反映了包结构 firstapplet/GoodEveningApplet.class。如果你要配置JAR file, 核对文件的目录结构使之相匹配。

l???????? 把所有需要的class文件传送到合适的Internet server上。class filesHTML file 的相对路径必须与 codebase 属性相匹配。

l???????? HTML files放在Internet server的合适路径下。

?

注意:如果你是为了顺从老版本的浏览器(JDK 1.02)请你记住,JAR files是不被支持的,你要用ZIP archive file 来替代。

?

Archive Builde来配置你的applet

?

JBuilder Archive Builder 会核查发布你applet的所有必要的文件并将他们归档为JARfiles

?

配置你的applet

1、? 保存你的项目。

2、? 选择 Project|Make Project "FirstApplet.jpx" 来编译你的项目。

3、? //jbproject/路径下为你的applet创建一个applet目录。这将成为你放置和测试的HTML file ? JAR file 的目录。

4、? 选择 Wizards|Archive Builder 来打开Archive Builder

http://blog.csdn.net/yuxiaojie/gallery/image/8029.aspx

1、? 在步骤一的Archive Type的下拉框中选择 Applet JAR 点击next进入下一步。

Note: 当你在为不支持JAR files的老版本浏览器开发applet时,选择 Applet ZIP .

2、? 接受默认的 Applet JAR 的默认名。

3、? 点击File字段旁带点的按钮,浏览到 //jbproject/applets/ 目录下。

4、? File Name字段的JAR file name 改为GoodEvening.jar 然后点击确认。

步骤2应该是如下图所示:

http://blog.csdn.net/yuxiaojie/gallery/image/8030.aspx

1、? 点击next进入下一步。

2、? 接受步骤3的默认设置。

步骤3如下图所示:

http://blog.csdn.net/yuxiaojie/gallery/image/8031.aspx

1、? next进入步骤4

2、? next进入步骤5

你不需要添加任何的libraries

3、? 接受步骤5中的默认设置。

注意到manifest setting选项被设置成了create a manifest file

4、? finish来退出archive builder

在项目面板中出现了一个名为 Applet JAR 的节点,你可以通过右击,选择Properties来修改它。

5、? 右击 Applet JAR archive 节点,选择Make 来编译项目。

Archive Builder 将把你在步骤3中加入的 firstapplet package 聚集在 JAR file中。

6、? 点击Applet JAR archive展开图标来查看GoodEvening.jar archive file

7、? 双击项目面板里的JAR file

manifest file 出现在内容面板里,JAR files中的内容则出现在structure pane中。选中 structure pane 的文件,在内容面板中查看它。

Note: 如过你要把多个程序传送到相同的位置,你可以将文件重新分类,而不是将它们都包含在每一个的JAR 文件中。

?

步骤八:修改HTML 文件

目前为止你的applet被配置在了 JAR 文件中,你需要修改HTML 中的archive 属性并且包含JAR 的文件名。你也可以在 标记中加入消息来告诉用户在不允许java的浏览器中,他们将不能看到applet,除非他们运行java或者升级他们的浏览器。

修改HTML文件:

1、? JBuilder中打开 GoodEveningApplet.html ,按如下方法添加 archive 属性:

a)???????? 选择 Source 标签来查看 HTML 源代码。

b)??????? tag中添加如下的 HTML 代码:

archive? = "GoodEvening.jar"

tag 应该是类似于这样:

? codebase = "."

? code???? = "firstapplet.GoodEveningApplet.class"

? archive? = "GoodEvening.jar"

? name???? = "TestApplet"

? width??? = 400

? height?? = 300

? hspace?? = 0

? vspace?? = 0

? align??? = top

>?

提示:如果你的applet有多个的JAR 文件,可以将它们排列起来,以逗号分隔,如: archive="file1.jar, file2.jar"

重要:一些浏览器并不支持JAR 文件和多个归档文件的列表,但是肯定支持在archive属性中只有一个单独的ZIP文件。

接下来,添加一条消息,告诉用户,没有允许java的浏览器或者他们的浏览器不支持java,因此他们将不能够看到applet

2、  tags的打开和关闭的交界处输入以下消息:

You need a Java-enabled browser running JDK 1.1.x or greater to view this applet

你的 tags应该类似于:

? codebase = "."

? code???? = "firstapplet.GoodEveningApplet.class"

? archive? = "GoodEvening.jar"

? name???? = "TestApplet"

? width??? = 400

? height?? = 300

? hspace?? = 0

? vspace?? = 0

? align??? = top

>?

You need a Java-enabled browser running JDK 1.1.x or greater to view this applet.

任何不支持java的浏览器都会忽略掉 tags 并且显示在tags之间的消息。因为支持jiava的浏览器能够识别 tags,应此它就能够看见applet而不是我们刚才添加的消息。

重要:在我们保存HTML 文件之前,再次的核实以下 codebase code 值。如果这两个值出错了,applet将不能够被运行。记住, codebase的值表示了applet 代码(CLASS or JAR )文件和 HTML 文件的相对位置。值 ".", 表示class 文件是和HTML文件在相同的目录下。Code的值必须要是项目的fully qualified class name for the applet,包含了 package name

3、? 保存并且关闭文件。

4、? 将修改过的GoodEveningApplet.html 从项目的classes 目录下复制到applets 目录下。Applet目录应该包含两个文件GoodEveningApplet.html GoodEvening.jar

注意:记住JBuilder 创建了两个HTML 文件:project notes HTML file,FirstApplet.html, 放置在项目的根目录和下, applet HTML 文件包含了 tag, GoodEveningApplet.html, 放置在项目的src目录下。不要拷贝FirstApplet.html 而不是 GoodEveningApplet.html applets 目录下,否则你的applet将不会被运行。

?

步骤九:从命令行运行配置好的applet

在放置web上测试之前先在本地进行测试是一个好方法。你可以用Sun's appletviewer来做到这一点。它会告诉你是否web浏览器已经有了运行applet所需的所有东西。如果缺少了某些文件或者在HTML文件中出现了一些错误,applet都不会被运行。你可以在将它放置在web上之前把错误修改掉。

从命令行运行applet

1、? 确认 GoodEveningApplet.html GoodEvening.jar 的副本在applets 目录下。

2、? 打开命令行窗口。

3、? 按照以下方法清除掉本次会话任何的 CLASSPATH variables

l???????? Windows NT, 2000, and XP: set CLASSPATH

l???????? UNIX:

n???????? in csh shell: unsetenv CLASSPATH

n???????? in sh shell: unset CLASSPATH

4、? 转到applets/目录下。

5、? 输入以下命令来运行appletviewer

///bin/appletviewer GoodEveningApplet.html

其中 代表你运行JBuilder的版本,jbuilder6/.

重要:如果JBuilder在另一个驱动器上,必须包含盘符。

NOTE:对于Windows, backslashes (/)

如果"Good Evening" applet 能够被加载运行在appletviewer, 表明配置是成功的,所有的classes文件都能被找到并且被包含。如果applet不能被运行,查看错误信息,进行修改,重新编译、配置、测试。

"Good Evening" applet 可以从JBuilder安装目录下的samples/Tutorials/FirstApplet/ 中得到。

如果你在运行applet时出现了错误,核对教程最后的applet的源代码,并且查看以下几个常见的错误主题:

l???????? "Solving common applet problems" at http://www.java.sun.com/docs/books/tutorial/applet/problems/index.html"

l???????? Common mistakes in the tag" and "Additional tips for making applets work" in "Working with applets" in the Web Application Developer's Guide

?

?

?

开发applet的最后一步就是在web上进行测试、运行。它能告诉你是否真的已经有了所有需要的文件。虽然本教程并没有深入地阐述如何进行测试,但是"Testing your deployed applet on the Web" 给了一个概述。

?

恭喜你!你已经用JBuilder创建了你的第一个applet。现在你已经熟悉了JBuilder的开发环境,你会发现它有许多让你的编程工作更加简便的特性。

?

其它的一些applet教程可以查看:

l???????? "The Java Tutorial" at http://java.sun.com/docs/books/tutorial/index.html

l???????? Charlie Calvert's Part II: Applets at http://homepages.borland.com/ccalvert/JavaCourse/index.htm

l???????? Rich Wilkman's Curmudgeon web site at http://www.formlessvoid.com/jc/index

l???????? John Moore's "Applet design and deployment" at http://www.microps.com/mps/p_appletdesign.htm

?

步骤九:在web上测试你的applet

?

开发applet的最后一步就是在web上运行你的applet。它能告诉你是它是否真的拥有了运行所需的所有文件。在多个不同的浏览器上测试你的applet是很重要的,它能确认是否所有的文件都包含在了归档的文件中。本教程并不涉及到具体的测试细节,以下是一些测试的指导方针:

完成以下步骤,然后在不同的浏览器上运行你的applet来测试你的applet

1、? applet HTML JAR文件传送到Internet server 或者拷贝到 Windows NT server

a)? FTP (file transfer protocol) 来将文件传送至服务器。确保以二进制的方式传送

b)? 确保 HTML and JAR 文件在server上的位置符合HTML文件中codebase 属性,而且code 属性的确是fully qualified class name (包括 package name).

2、? 在多个不同的浏览器中测试applet,如果applet加载失败,核对该浏览器是否允许java。同时核对以下浏览器的java控制台的错误信息。

打开java控制台:

l???????? 选择 Netscape 中选择Communicator|Tools|Java Console

Java Console 的有效性和可达性随着浏览器的版本不同而不同。

3、? 改正错误,重新配置你的applet,再在浏览器中测试你applet

?

?

Tomsawyer

200485

?

?

?

?

?

  • 本文已收录于以下专栏:

Spring官方文档翻译(1~6章)

Spring官方文档翻译
  • tangtong1
  • tangtong1
  • 2016年05月05日 22:26
  • 24674

用Java做一个及时翻译工具

平时看英文文档或者查询资料的时候,遇到了不懂的单词,就要去百度,然后就会很麻烦。于是就想到用Java写一个及时翻译的小工具!预期的实现效果: 双击选中一个单词,按下Ctrl+C进行复制 然后马上显...
  • zjq_1314520
  • zjq_1314520
  • 2017年03月19日 05:25
  • 3328

Java实现Tank大战联机版

前言                 在前面对于Java初学者开发简单的桌面游戏的碰撞检测的总结中,笔者特意去翻了翻U盘里面           的东西。发现以前用Java做的Tank大战游戏还静...
  • kiritor
  • kiritor
  • 2013年05月20日 08:43
  • 5018

Java Socket通信实现带联机功能的俄罗斯方块

Java俄罗斯方块 实验项目内容 1、实现俄罗斯方块的基本游戏逻辑。 2、利用Socket编写服务器端和客户端程序。 3、实现俄罗斯方块的联网对战功能。 4、实现计分、音效等辅助功能。 本文联...
  • a343902152
  • a343902152
  • 2015年11月18日 23:34
  • 3732

Markdown官方文档[翻译]

概述哲学Markdown目标是实现”易读易写”. Markdown最大的亮点在于它的可读性。一篇Markdown格式的文档可以直接以纯文档的形式发布,并且它看起来并不会由标签和格式化指令构成。尽管Ma...
  • lovekun_03
  • lovekun_03
  • 2017年03月16日 15:33
  • 356

Kafka官方文档翻译(2016-11-16)

看了很多翻译文档,可能是版本的问题吧,感觉驴唇不对马嘴的。。。索性自己整理下,供大家学习吧!完全尊重原文档的翻译,一句一句可以对照的,若有纰漏,烦请指出。原英文文档链接:http://kafka.ap...
  • u012817635
  • u012817635
  • 2016年11月16日 18:04
  • 586

纯JAVA写的socket局域网斗地主游戏

前两天没项目做,就想着写点什么。 就写了这个小游戏没事跟同事玩玩。 5块钱一把,不带开挂的。先来几张效果图 废话不多,开篇纪念。感兴趣的朋友可以下源码玩玩 也可以自己修改修改 源码地址:htt...
  • laigezao
  • laigezao
  • 2015年09月24日 15:22
  • 4938

Spring MVC中文文档翻译发布

一份目前较完整的Spring MVC部分的翻译文档:mvc.linesh.tw。译文求准确自然,保有风格。...
  • CodeCleaner
  • CodeCleaner
  • 2016年06月25日 14:45
  • 848

java掷骰子游戏联机版

目前只实现了一个人的客户端,由服务端进行判断输赢,返回结果! 我
  • dotasfans
  • dotasfans
  • 2014年05月22日 19:38
  • 1943

Android官方文档training中英文翻译目录大全:29篇已翻译,45篇未翻译

Android官方文档training中英文翻译目录大全:29篇已翻译,45篇未翻译
  • yangzhenping
  • yangzhenping
  • 2015年02月02日 16:05
  • 5028
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java firstapplet联机文档翻译
举报原因:
原因补充:

(最多只允许输入30个字)