-2

所以我正在考虑制作一个GUI。我的朋友告诉我他知道如何在 C# 中做到这一点,所以我在设置 GUI 时采用了这种方法。无论如何要让 C# 制作的 GUI 在 java 中可用?

4

6 回答 6

5

是的你可以。你绝对不应该。我曾经编写了一个使用我制作的 VB GUI 的 perl 应用程序,它们通过 OLE 进行通信。

这可能是你能做的最糟糕的结构,不要这样做:)

于 2012-02-27T01:00:01.147 回答
3

实际上不是。您不能只给 C# 编译器一个 Java 文件,反之亦然。

如果你真的下定决心,你可以使用IKVM将 Windows 窗体暴露给 Java。

还有J#,但它不再被积极开发。

于 2012-02-27T01:01:09.307 回答
1

不!它行不通。Java 的 GUI 类是不同的,因此即使您将 .cs 文件重命名为 .java 文件并稍作修改,代码也无法工作。

于 2012-02-27T00:54:00.290 回答
1

不,这行不通。您不能将 Java 和 C# 编译为单个可执行包。

于 2012-02-27T00:54:20.430 回答
1

不,Java 和 .NET 与 GUI 交互的方式完全不同。

于 2012-02-27T00:54:43.953 回答
1

如果您使用 Java 进行编码,我认为您应该学习如何使用 Java 制作 GUI。但是,如果您希望 C# 和 Java 都可以互操作,那么您需要一个新层,它就像在 CLR 上运行的 C# 程序和在 JVM 上运行的 Java 程序之间的桥梁。以下链接很好地解释了如何通过运行时桥直接从 C# 程序调用 Java 例程:

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

您需要使用适当的逻辑在 GUI 上绑定某些内容。例如File>New菜单选项可能存在用于创建新文件。因此这个菜单命令需要绑定一个逻辑。如果不编写这些逻辑、事件处理程序或不在 GUI 类中定义一些其他功能,您就无法逃跑。严格来说,您总是需要在由 GUI 类组成的表示层上编写大量代码。因此,您的朋友也确实需要自己构建表示层。因为无用的用户界面被称为原型而不是程序。并且不要忘记运行时网桥会显着降低性能。最后,我建议你去学习如何用 Java 制作 GUI。

于 2012-02-27T01:14:49.977 回答