Apache Pivot的位階等同於Java FX、Microsoft Silverlight或是Adobe Flash。本文將介紹三種不同啟動Pivot程式的方法。
首先,我們先照官網上的範例建立一個HelloWorld.java程式。
import java.awt.Color; import java.awt.Font; import org.apache.pivot.collections.Map; import org.apache.pivot.wtk.*; public class HelloWorld implements Application { private Window window = null; @Override public void startup(Display display, Map<String, String> properties) { window = new Window(); Label label = new Label(); label.setText("Hello World!使用Apache Pivot呈現中文!新細明體(PMingLiU)"); label.getStyles().put("font", new Font("PMingLiU", Font.BOLD, 24)); label.getStyles().put("color", Color.RED); label.getStyles().put("horizontalAlignment", HorizontalAlignment.CENTER); label.getStyles().put("verticalAlignment", VerticalAlignment.CENTER); window.setContent(label); window.setTitle("Hello World!"); window.setMaximized(true); window.open(display); } @Override public boolean shutdown(boolean optional) { if (window != null) { window.close(); } return false; } @Override public void suspend() { } @Override public void resume() { } }
1.使用桌面應用程式的方式啟動:在HelloWorld.java中加入public void main(String[] args),如下。
//使用桌面應用程式方式啟動 public static void main(String[] args) { DesktopApplicationContext.main(HelloWorld.class, args); }
2.使用Applet方式進行啟動:
假設將HelloWorld.java建置成HelloWorld.jar,並且放在lib的資料夾中(意即該資料夾中包含了pivot*.jar以及HelloWorld.jar),所以在lib的上一層資料夾中建立一個HelloWorld.html頁面,網頁原始碼如下:
<applet code="org.apache.pivot.wtk.BrowserApplicationContext$HostApplet" archive="lib/pivot-core-2.0.1.jar,lib/pivot-wtk-2.0.1.jar,lib/pivot-wtk-terra-2.0.1.jar,lib/HelloWorld.jar" width="160" height="80"> <param name="application_class_name" value="HelloWorld"> </applet>
3.同樣使用Applet方式啟動,但是為了瀏覽的相容性問題,使用Java官網上建議JavaScript來處理。
<script type="text/javascript" src="http://java.com/js/deployJava.js"> </script><script type="text/javascript"> var attributes = { code:"org.apache.pivot.wtk.BrowserApplicationContext$HostApplet", width:"240", height:"80" }; var libraries = []; libraries.push("lib/pivot-core-2.0.1.jar"); libraries.push("lib/pivot-wtk-2.0.1.jar"); libraries.push("lib/pivot-wtk-terra-2.0.1.jar"); libraries.push("lib/HelloWorld.jar"); attributes.archive = libraries.join(","); var parameters = { codebase_lookup:false, application_class_name:'HelloWorld' }; var javaArguments = ["-Dsun.awt.noerasebackground=true", "-Dsun.awt.erasebackgroundonresize=true"]; parameters.java_arguments = javaArguments.join(" "); deployJava.runApplet(attributes, parameters, "1.6"); </script>
4.如果在程式中有使用@BXML annotation的話,則要將applet進行簽章才得以在網頁上正常執行。
我們將在下一篇文章中介紹使用JNLP的方式來啟動Apache Pivot應用程式。
No comments:
Post a Comment