Tadotter - Eclipse RCP版 (1.1.2.v20090921) | 2009-09-21 15:19 |
Tadotter - JavaFX版 (2.0.1) | 2009-07-06 11:19 |
標準実行とWeb Start実行では、run関数の引数で受け取れます。 ブラウザ実行とモバイルではFX.getArgument関数で取得できます。 Web Start実行の引数はjnlpファイルに書きます。ブラウザ実行の引数はjnlpにもhtmlにも書けます。
モバイルについては本家のTipsである Using Advanced Deployment Features をご覧ください。ここにはモバイル以外についても参考になる情報があります。
例:
function run(args:String[]):Void{ println("__PROFILE__ = {__PROFILE__}"); if(__PROFILE__ == "desktop"){ println("args = {args.toString()}"); }else{ var argsWeb = for(arg in ["arg_1","arg_2","arg_3"]){ FX.getArgument(arg) }; println("args = {argsWeb.toString()}"); } }
NetBeans IDEで「プロジェクトプロパティ>実行」を開き、主クラスと引数を設定してください。 スクリプトファイルにクラスが無くても構いません。設定ができたらプロジェクトを実行してください。
出力結果:
__PROFILE__ = desktop args = [ one, two, three ]
NetBeans IDEでビルドした後、プロジェクト配下にあるdistディレクトリをどこかよそにコピーしてください。 アプリケーション名.jnlpファイルを開き、コマンドライン引数を追加してください。 よそにコピーする理由は、ビルドするたびにjnlpファイルが再作成されて修正が無効になるからです。
<?xml version="1.0" encoding="UTF-8"?> <jnlp spec="1.0+" codebase="file:/J:/dist/JavaFXTips/" href="JavaFXTips.jnlp"><!-- ★パス変更★ --> <information> <title>JavaFXTips</title> <vendor>Takaaki NAKAMURA</vendor> <homepage href="file:/J:/dist/JavaFXTips/"/><!-- ★パス変更★ --> <description>JavaFXTips</description> <offline-allowed/> <shortcut> <desktop/> </shortcut> </information> <resources> <j2se version="1.5+"/> <extension name="JavaFX Runtime" href="http://dl.javafx.com/1.2/javafx-rt.jnlp"/> <jar href="JavaFXTips.jar" main="true"/> </resources> <application-desc main-class="com.sun.javafx.runtime.main.Main"> <argument>MainJavaFXScript=com.hisagisoft.javafx.tips.RunFunction</argument> <argument>one</argument><!-- ★引数追加★ --> <argument>two</argument><!-- ★引数追加★ --> <argument>three</argument><!-- ★引数追加★ --> </application-desc> <update check="background"> </jnlp>
追加できたらアプリケーション名.jnlpファイルをダブルクリックで実行してください。 Javaコンソールに結果が出ます。
出力結果:
__PROFILE__ = desktop args = [ one, two, three ]
jnlpの引数もhtmlの引数も受け取ることができます。 前述のようにdistディレクトリをよそにコピーしてアプリケーション名_browser.jnlpを修正します。
<?xml version="1.0" encoding="UTF-8"?> <jnlp spec="1.0+" codebase="file:/J:/dist/JavaFXTips/" href="JavaFXTips_browser.jnlp"><!-- ★変更★ --> <information> <title>JavaFXTips</title> <vendor>Takaaki NAKAMURA</vendor> <homepage href="file:/J:/dist/JavaFXTips/"/><!-- ★変更★ --> <description>JavaFXTips</description> <offline-allowed/> <shortcut> <desktop/> </shortcut> </information> <resources> <j2se version="1.5+"/> <extension name="JavaFX Runtime" href="http://dl.javafx.com/1.2/javafx-rt.jnlp"/> <jar href="JavaFXTips.jar" main="true"/> </resources> <applet-desc name="JavaFXTips" main-class="com.sun.javafx.runtime.adapter.Applet" width="200" height="200"> <param name="MainJavaFXScript" value="com.hisagisoft.javafx.tips.RunFunction"/><!-- ★最後のスラッシュを忘れずに★ --> <param name="arg_1" value="one"/><!-- ★追加★--> </applet-desc> <update check="background"> </jnlp>
続いてアプリケーション名.htmlも修正して、arg_2とarg_3のブロックを追加してください。
javafx( { archive: "JavaFXTips.jar", draggable: true, width: 200, height: 200, code: "com.hisagisoft.javafx.tips.RunFunction", name: "JavaFXTips" }, { arg_2: "two", arg_3: "three" } );
アプリケーション名.htmlをダブルクリックしてください。Javaコンソールに結果が出ます。
出力結果:
__PROFILE__ = browser args = [ one, two, three ]
[PageInfo]
LastUpdate: 2009-08-03 15:06:20, ModifiedBy: happyhills
[Permissions]
view:all, edit:login users, delete/config:members