2012-02-27 152 views
-2

所以我在考慮製作一個GUI。我的朋友告訴我他知道如何在C#中完成它,所以我採用這種方法來設置GUI。無論如何,有一個C#的GUI可用於Java?.cs文件可以在.java軟件中使用嗎?

+0

它是C#或Java – user1227804 2012-02-27 00:56:06

+0

也許你可以使用C#然後不用麻煩Java? – MajesticRa 2012-02-27 01:19:38

回答

1

我想你應該學習如何在Java中編寫一個GUI。但是,如果您希望C#和Java都能夠互操作,那麼您需要一個新的層,它在CLR上運行的C#程序和JVM上運行的Java程序之間充當橋樑。下面的鏈接有關於如何直接從C#程序在運行時橋樑調用Java程序一個很好的解釋:

http://www.devx.com/interop/Article/19945/1954

您需要綁定的GUI的東西用適當的邏輯。如文件>新建可能存在用於創建新文件的菜單選項。因此這個菜單命令需要綁定到一個邏輯。如果不編寫這些邏輯,事件處理程序或不在GUI類中定義一些其他功能,則不能逃跑。嚴格地說,你總是需要在由GUI類組成的表示層上寫很多代碼。所以,你的朋友也需要建立表示層本身。因爲無用的用戶界面被稱爲原型而不是程序。另外不要忘記,運行時間橋會顯着降低性能。最後,我建議你去學習如何在Java中製作GUI。

+0

您可以在CLR上運行Java,但通常不會。請參閱[IKVM.net](http://www.ikvm.net)。 – parkovski 2012-02-27 01:29:48

+0

我不知道,謝謝。儘管我從來沒有用過它,但我猜它不會很好地運作。如果他和他的朋友做得很好,那麼這也許是Scaream問題的另一種解決方案:) – 2012-02-27 01:52:18

1

不!它不會工作。 Java的GUI類有所不同,所以即使您將.cs文件重命名爲.java文件並稍作修改,代碼也無法正常工作。

1

不,它不會工作。您無法將Java和C#編譯爲單個可執行文件包。

+0

不要以爲OP指定它必須是單個可執行程序包。 – Jordan 2012-02-27 01:01:42

1

否。Java和.NET與GUI交互的方式完全不同。

5

是的,你可以。你絕對不應該這樣做。 我曾經寫過一個使用VB GUI的perl應用程序,他們通過OLE進行通信。

這可能是你所能這樣做不:)

3

沒有實用最壞的結構。你不能只給C#編譯器一個Java文件,反之亦然。

如果你真的確定了,可以使用IKVM將Windows Forms公開到Java。

還有J#,但它不再被積極開發。

+0

措辭已更改。 – parkovski 2012-02-27 08:36:25

相關問題