2012-05-06 12 views
0

我有一個Javafx 2.0 Applet,運行良好。這個小程序需要所有安全權限。這個小程序有淺灰色背景(與html背景頁面相同的顏色)。Javafx 2.0當Applet安全提示時,如何自定義空Applet區域的背景?

所以我的問題是:當Java安全性請求用戶允許該applet時,卸載尚未applet的背景是深灰色的。當用戶點擊「執行」時,背景將變成淺灰色。但這是因爲applet已加載。

當這個安全警告彈出時,我想這個空的小程序區域變爲淺灰色(作爲html頁面的背景)。你們有一個想法如何做到這一點?

我正在使用裝滿淺灰色的完整矩形的預加載程序,但預加載程序似乎在Java安全性之後啓動了用戶允許的所有權限。

這裏的結果,讓你更好的理解:沒有樣式表CSS

enter image description here

HTML文件(同樣的問題,如果我刪除的CSS):

<html><head> 
<SCRIPT src="./web-files/dtjava.js"></SCRIPT> 
<script> 
    function javafxEmbed() { 
     dtjava.embed(
      { 
       url : 'Test.jnlp', 
       placeholder : 'app-placeholder', 
       width : 600, 
       height : 400 
      }, 
      { 
       javafx : '2.0+' 
      }, 
      {} 
     ); 
    } 
    dtjava.addOnloadCallback(javafxEmbed); 
</script> 
</head><body> 
<h2>Test page for <b>TEST</b></h2> 
    <center><div id='app-placeholder'></div></center> 
</body></html> 

這是JNLP文件

<?xml version="1.0" encoding="utf-8"?> 
<jnlp spec="1.0" xmlns:jfx="http://javafx.com" href="Test.jnlp"> 
    <information> 
    <title>Test</title> 
    <vendor>Test</vendor> 
    <homepage href="http://www.test.com/"/> 
    <description>I don't know where this appears</description> 
    <description kind="short">And I don't know where this appears too</description> 
    <icon href="icon.png"/> 
    <icon kind="splash" href="icon.png"/> 
    <offline-allowed/> 
    </information> 
    <resources os="Windows"> 
    <jfx:javafx-runtime version="2.0+" href="http://javadl.sun.com/webapps/download/GetFile/javafx-latest/windows-i586/javafx2.jnlp"/> 
    </resources> 
    <resources> 
    <j2se version="1.6+" href="http://java.sun.com/products/autodl/j2se"/> 
    <jar href="lib/test-Preloader.jar" size="5096" download="progress" /> 
    <jar href="test.jar" size="246346" download="eager" /> 
    </resources> 
<security> 
    <all-permissions/> 
</security> 
    <applet-desc width="600" height="400" main-class="com.javafx.main.NoJavaFXFallback" name="Test" /> 
    <jfx:javafx-desc width="600" height="400" main-class="testApp.IM" name="Test" preloader-class="test.preloader.im_Preloader"> 
    </jfx:javafx-desc> 
    <update check="background"/> 
</jnlp> 
+0

JNLP無效。用JaNeLA進行驗證。 'dtjava.js'的內容是什麼? –

+0

我試圖用JaNeLA驗證它,但打開jnlp文件時出現ExecutionException.nullpointerexception – ohFRY

+0

基於文本的報告中的詳細信息是什麼? –

回答

1

請參閱Applet部署指南的Loading Screen部分。

新插件提供了更好的自定義加載小程序之前顯示的圖像。現在支持將動畫GIF作爲圖像參數的目標,如舊Java插件指南的Special Attributes部分中所述。此外,現在支持以下新參數:...

+0

在JavaFX 2.0中,JNLP有很大不同,所以我在JNLP文件中寫了這個'''來傳遞指定的參數來設置背景框顏色與html背景頁面相同。但是,也行不通。只要我不點擊「執行」,我仍然可以看到深灰色的框。 – ohFRY

+0

使用的是什麼HTML?將其編輯到問題中並在評論中通知我。 –

+0

它不是來自HTML,因爲html是由Netbeans生成的默認模板。此外,當我刪除的CSS文件,並且它也一樣。所以它可能來自fxml或應用於fxml文件的css。我會看看。順便說一下''沒有效果。這可能只適用於Java小程序。 – ohFRY