媲美WPF的Linux开源2d GUI引擎

标签 linux user-interface 2d graphic

我正在寻找 Linux 上的 2d 开源 GUI 引擎,以消除我们对 Windows 的依赖。我们当前的应用程序是用 C# + WPF 编写的,速度非常慢且成本高昂。它阻止我们做任何了不起的事情。如果 Linux 中有任何东西可以提供 WPF 可以提供的东西(易于使用的设计器、动画、布局和组件控件等),我宁愿在 Linux 中用 C++/Java 重写我的整个代码库。

Qt 是一种选择,但考虑到诺基亚最近解雇了整个团队,我有点担心它在未来的支持。

最佳答案

我仍然会推荐 Qt。即使诺基亚取消了对它的所有支持,Qt 仍处于 LGPL 之下。这意味着源代码仍然可用且免费 (libre),并且 KDE 社区将继续保持下去。无论如何,他们已经达到了一定程度。此外,虽然 Qt 仍然是 C++,但它是通过元对象编译器 (moc) 对 C++ 进行了非常修改的扩展,这是一种特殊的预处理器。我认为您不会后悔选择使用 Qt。

当然,如果您想继续使用 C# 和 .NET,可以使用开源 Mono 计划,他们正在尝试创建一个主要兼容的 .NET 和 C# 的替代品。我不知道他们是否支持除 Win Forms 之外的任何东西,但几乎每个图形库都有绑定(bind),因此您可以使用 GTK(称为 GTK# 的绑定(bind))、Qt、WxWidgets 和许多其他东西。

此外,还有 GNOME 的 Glib 和 GTK+,它们是 Linux 的其他主要界面库。它们是面向 C 语言的,因此您可能很难调整您的代码。

关于媲美WPF的Linux开源2d GUI引擎,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12203221/

相关文章:

linux - linux 内核中的 kmalloc() 功能

r 系统函数 cd 进入带空格的文件夹名称

JavaFX TableView 动态列和数据值

java - 如何使用不同的延迟参数持续更新textView

java - 根据角度和速度更新坐标

c - 如何声明指针并为二维数组分配内存并传递给函数

c++ - 为什么 execlp() 不将输出打印到终端?

c - 为什么害怕段错误?

android - 通过足够快地单击按钮两次来绕过模态 Android 对话框?

algorithm - 如何缩放由点组成的形状?