2013-04-23 61 views
6

我在構建GWT應用程序時遇到了一些麻煩。GWT可以處理Java Swing嗎?

這裏:https://developers.google.com/web-toolkit/tools/gwtdesigner/features/menu_editing谷歌自己談論了在GWT中實現Java Swing,JFrame的可能性。我是一個Java新手,不知道Swing的SWT是什麼,所以我沒有嘗試過這個選項。

當我嘗試運行我的代碼(這是從GWT Designer中內置),我在使用JFrame的每一行出現錯誤:

JFrame frame = new JFrame(); 

     JMenuBar menuBar = new JMenuBar(); 
     frame.setJMenuBar(menuBar); 

     JMenu mnNewMenu = new JMenu("Test"); 
     menuBar.add(mnNewMenu); 

     JMenu mnNewMenu_1 = new JMenu("Test"); 
     mnNewMenu.add(mnNewMenu_1); 

返回:[錯誤] [gwtearthdemo] - 96線:無源代碼可用於類型javax.swing.JFrame;你忘了繼承一個必需的模塊嗎?

同上JMenuBar,JMenu。

我看到類似這樣的錯誤,並提供了相關的函數不適用於GWT的答案。但是,谷歌表示它是。有什麼建議嗎?

+1

[文章引用](https://developers.google.com/web-toolkit/tools/gwtdesigner/features/menu_editing)顯示了設計者如何讓您可以選擇在Swing或SWT中找到的部件_comparable_。 – trashgod 2013-04-23 21:21:38

回答

8

在GWT中,你只能使用一些java類,因爲它不可能將所有java類轉換爲javascript。您可以在此鏈接中找到允許的課程列表:List of Classes

+0

然後我不明白我原來的問題中的鏈接。他們爲什麼做廣告? – 2013-04-23 18:31:12

+0

作爲核心的gwt開發者,我對設計師的經驗不足,你是否已經將swt和swing的源代碼添加到構建路徑並與jar一起嘗試? – 2013-04-23 18:43:15

+0

我認爲揮杆是標準?我不知道如何將它添加到構建路徑,如果它尚未。 設計師只是爲我生成代碼行,所以它產生了上面的內容。 – 2013-04-23 20:25:32