簡體   English   中英

使用動態參數調用 Java Applet

[英]Invoking Java Applet with dynamic parameters

這是場景。 用戶在 html 頁面中使用一定數量的參數填寫表單,然后我需要使用此特定參數調用我的小程序,可能在同一頁面內。 執行此傳遞的最簡單方法是什么?

我正在使用 runApplet 函數,但它不起作用。 JS 控制台和 Java 控制台中沒有消息。

<html>
<head>
<title>Compila i dati</title>
</head>
<body>
<script src=
  "http://www.java.com/js/deployJava.js"></script>
<script>
    function runApplet(){
        var attributes = { id:'anID', code:'Test',  width:1, height:1, codebase: '.'} ;
        var parameters = {width:'100', height:'100', code:'Test', archive: 'applet.jar, xyz.jar, abc.jar', 
        posX: document.forms["form1"]["posX"].value , posY: document.forms["form1"]["posY"].value , heightSign: '300' , widthSign: '600' , 
        PDFUrl: 'http://anurl' , 
        type:'application/x-java-applet' , scriptable:'false' } ;
        deployJava.runApplet(attributes, parameters, 1.6);
    }
</script>


<form name = "form1" onsubmit="runApplet()">
    <div>
        <label for="name">Nome:</label>
        <input type="text" name="nome" />
    </div>
    <div>
        <label for="mail">Cognome:</label>
        <input type="text" name="cognome" />
    </div>
    <div>
        <label for="msg">X:</label>
        <input type="text" name="posX" />
    </div>
    <div>
        <label for="msg">Y:</label>
        <input type="text" name="posY" />
    </div>

    <div class="button">
        <button type="submit">Invia</button>
    </div>
</form>

</body>

我可以嘗試通過 javascript 以這種方式創建一個動態小程序容器:

 $('#idappletv').empty();
       $('#idappletv').hide();
        var _xmhlcode = "  <script>  function javafxEmbed() {" +
        "dtjava.embed( " +
        "{" +
        "    id: 'myBrApplet'," +
        "    url : 'pages/applet/myApplet.jnlp'," +
        "    placeholder : 'javafx-app-placeholder'," +
        "    width : 890   ," +
        "    height : 200," +
        "    jnlp_content : 'bmFtZT0iQXBwbGV0RnhCcm93c2VyIiAvPg0KICA8dXBkYXRlIGNoZWNrPSJhbHdheXMiLz4NCjwvam5scD4NC=='" +
        ", params: {param1:'" + param1 + "',param2:'" + param2 + "'}" +
        "}," +
        "{" +
        "    javafx : '2.2+'" +
        "}," +
        "{}" +
        ");" +
        "}" +
        "dtjava.addOnloadCallback(javafxEmbed); </" + "script> ";

        $('#idappletv').append("<div id='javafx-app-placeholder'></div>");
        $('#idappletv').append(_xmhlcode);
        dtjava.addOnloadCallback(javafxEmbed);
        $('#idappletv').show();

然后當小程序啟動時,您可以使用以下命令讀取參數:

 @Override
    public void start(Stage primaryStage) {
        Parameters params = getParameters();
        String param1 = params.getNamed().get("param1");
        String param2 = params.getNamed().get("param2");

您可以從 html 頁面讀取參數“param1 和 param2”。

它應該是作品。 我將 JavaFX 與 java-webstart ( http://docs.oracle.com/javafx/2/deployment/deploy_swing_apps.htm ) 一起使用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM