我有一个大型 GUI 项目,我想将其移植到 Linux。在 Linux 中进行 GUI 编程最推荐使用的框架是什么?KDE / Gnome 等框架是否可用于此目标?还是使用 X 以外的更通用的框架更好?

我觉得如果我选择 Gnome 或 KDE 中的一个,我就会对选择其中一个而不是另一个的 Linux 市场的大部分人关闭市场。(是的,我知道有重叠)

有没有更好的办法?或者我是否必须创建 2 个完整的 GUI 应用程序才能实现接近 100% 的覆盖率?

没有必要有一个也能在 Win32 上运行的跨平台解决方案。

有帮助吗?

解决方案

您最好的选择可能是将其移植到跨平台小部件库,例如 wxWidgets, ,这将使您可以移植到 wxWidgets 支持的任何平台。

区分 Gnome 库和 GTK、KDE ​​库和 Qt 也很重要。如果您编写代码来使用 GTK 或 Qt,那么它对于任何桌面环境的用户都应该可以正常工作,包括 XFCE 等不太流行的环境。如果您使用其他 Gnome 或 KDE 特定的库来执行与小部件无关的任务,您的应用程序在桌面环境之间的可移植性将较差。

其他提示

我建议 wxWidgets 或者 Qt. 。它们都是成熟的、结构良好的、跨平台的,具有良好的文档和示例源代码。

Gnome 应用程序可以在 KDE 桌面上运行,反之亦然;你不会把任何人拒之门外。就工具包而言,它是相当主观的。所有工具包都是相当跨平台的。如果您不是开源的,那么 GTK+ 将是更便宜的选择,因为 Qt 仅免费供开源使用,而 GTK+ 是 LGPL。

你有没有想过使用Mono?Paint.NET 等程序在 Linux 和 Windows 下运行良好。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top