2011-10-08 20 views
1

我試着做從下面的代碼一個簡單的斯卡拉小程序:如何連接scala applet和html文件?

import javax.swing._ 
object ScalaAppletMain extends JApplet{ 
val sa = new App 
override def init(){ 
    val pane = getContentPane() 
    pane.add("Center",sa) 
} 
override def start(){} 
override def stop(){} 
} 

(請注意,此代碼是大量轉發在網站的例子和我都只是盡力去學習如何做到這一點) 和應用程序類:

import javax.swing._ 
import java.awt._ 
class App extends JPanel { 
    var number = 2229999 
    initialize() 

    private def initialize() { 
    var text = new JLabel(number.toString) 
    var panel = new JPanel() 
    panel.setLayout(new BorderLayout(1,1)) 
    panel.add(text) 
    add(panel) 
}} 

和我的HTML文件中的代碼:

<applet> 
    archive="ScalaAppletMain.class,app.class,scala-library.jar" 
    width="660" 
    height="500" 
</applet> 

但是它不工作,任何幫助嗎?

+0

你知道,也有定義的'scala.App'特質始終進口? – ziggystar

+0

也許你可能想解釋它不工作的方式。特別是,您的瀏覽器的控制檯是否提供任何錯誤消息? –

+0

它只是不負載時,java程序的窗口打開,但什麼也沒發生 –

回答

1

對於啓動applet元素應該有打開標籤而不是身體裏面的屬性。

<applet 
    archive="ScalaAppletMain.class,app.class,scala-library.jar" 
    width="660" 
    height="500"> 
</applet> 

然後,找到任何其他問題,你將不得不找到適合您的Java程序環境中的控制檯輸出,放眼看它是否記錄任何錯誤 - 他們應該給你一個線索。

例如在Mac上,在Java應用程序首選項有(高級)選項,以顯示控制檯當加載一個Applet。

+0

沒了,仍然一無所獲。 –

+1

然後告訴我們控制檯輸出說明什麼。 –

+0

爲什麼2個答案?你的其他答案的內容將被最好地編輯到這個答案中,然後被刪除。 +1用於注意格式錯誤的HTML並強調控制檯輸出。沒有控制檯輸出,我們只能猜測。 –