2012-02-27 48 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

相关问题