2012-05-13 181 views
0

我想將我用CS.5製作的Flash遊戲(它被導出爲.swf)放到java應用程序中。從研究中,我發現了一些方式來給它可能使用的是嵌入式Web瀏覽器或某種閃光的球員:Java應用程序中的Flash遊戲

Embed .swf file to my Jframe
Embed a web browser within a java application

但是,這是做到這一點的最佳方式,並保持它交互性(即遊戲)。如果嵌入式Web瀏覽器顯示back/front/url /等,它也將完全適合。按鈕,然後我不能使用它

那麼最好的辦法是做什麼呢? Java應用程序中的flash播放器會保持交互性(遊戲的運行方式與在Web瀏覽器或Flash Player應用程序中的運行方式相同)?

+0

你爲什麼不試試? – Steven

+0

我試圖使用http://djproject.sourceforge.net/ns/,但我不知道如何 – core16

回答

0

您可以使用swf COM API ExternalInterface.call()與swf applcaition進行通信。

但它只支持動作腳本3及更高版本。

+0

我的遊戲是用actionscript 3做的,我該怎麼做? – core16

+0

我不使用鞦韆,我使用swt。但swf api是同一個。 – user1112699

+0

那麼我該怎麼做呢?或者你有鏈接到某個地方來解釋如何去做? – core16

0
public void callFunction(String function, String params) 
    { 
     if (!created) 
      return; 
     String request = "<invoke name=\"" 
       + function 
       + "\"><arguments><string>" 
       + params 
       + "</string></arguments></invoke>"; 
     Variant[] args = new Variant[1]; 
     args[0] = new Variant(request); 
     flashObject.invokeNoReply(DISPID_CALLFUNCTION, args); 
} 

這是一個swt swf調用函數的實現。

你可以實現一個swf容器,這很容易。一些JNI jar如JNative,JNA可以幫助你。

我實現了一個win32庫swt-win32-extension.jar,它包含一個自定義的swf容器,但它不能被swing使用。

+0

那麼我該如何使用它? – core16

+0

一個好消息。 JFlashPlayer2.2支持ExternalInterface.call()。 http://www.brothersoft.com/jpackages-jflashplayer-77667.html – user1112699

+0

我在這裏找到了一個zip文件http://www.fileol.com/developer-tools/jpackages-jflashplayer-2.2-free.html它也可以與mac一起使用嗎? – core16