向javaFX程序中传递参数的方法有三,主要看javaFX程序是以何种形式发布的。
设我们有如下javaFX代码
其中要访问的参数名为"key".
1. 当javaFX程序以命令行形式调用时(命令行参数)
2. 当javaFX程序以Applet形式调用时(javascript脚本)
3. 当javaFX程序以Web Start形式调用时(jnlp配置文件)
或问可否在浏览器中直接调用jnlp的同时传递参数, 形如
博主答曰: 否. 替换方案是
做一个专用Servlet, 向其传递必要参数, 然后自动生成对应的jnlp的URL(包括参数), 再重定位可也. (有工夫的可试试)
博主(Rakesh Menon)地址: [url]http://blogs.sun.com/rakeshmenonp/en_US/[/url]
设我们有如下javaFX代码
var text = Text {
x: 10, y: 30
font : Font { size : 16 }
content: "Argument {FX.getArgument( "key" )}"
}
其中要访问的参数名为"key".
1. 当javaFX程序以命令行形式调用时(命令行参数)
javafx -cp FXArguments.jar fxarguments.Main key="From Command Line"
2. 当javaFX程序以Applet形式调用时(javascript脚本)
<script src="http://dl.javafx.com/1.2/dtfx.js"></script>
<script>
javafx(
{
archive: "FXArguments.jar",
draggable: true,
width: 250,
height: 80,
code: "fxarguments.Main",
name: "FXArguments",
key: "from Applet"
}
);
</script>
3. 当javaFX程序以Web Start形式调用时(jnlp配置文件)
<jnlp spec="1.0+" codebase="dist" href="FXArguments.jnlp">
<application-desc main-class="com.sun.javafx.runtime.main.Main">
<argument>MainJavaFXScript=fxarguments.Main</argument>
<argument>key=from Java Web Start</argument>
</application-desc>
</jnlp>
或问可否在浏览器中直接调用jnlp的同时传递参数, 形如
www.test.com/app.jnlp?key=arg1&test=other
博主答曰: 否. 替换方案是
做一个专用Servlet, 向其传递必要参数, 然后自动生成对应的jnlp的URL(包括参数), 再重定位可也. (有工夫的可试试)
博主(Rakesh Menon)地址: [url]http://blogs.sun.com/rakeshmenonp/en_US/[/url]