编写通用/本机外观GUI linux应用程序

时间:2015-11-14 20:52:51

标签: linux qt gtk gnome kde

有没有办法在所有DE上创建具有原生/通用外观的Linux应用程序?例如,如果我在GTK中编写应用程序,它在Gnome上看起来很好/原生,但在KDE(QT)上它看起来很难看。我想知道是否有一个通用的框架来创建独立于DE的UI(最好具有UI的声明性语法),这将在所有DE上创建原生外观?

1 个答案:

答案 0 :(得分:1)

我不这么认为,因为我不确定任何原生外观定义的。然而,像GTK(由Gnome& XFCE使用)和Qt(由KDE使用)这样的工具包以某种方式标准化了一些“常见”(或至少是常见的)外观......(实际上,Gnome和KDE都定义了一些视觉和行为指南,这是不相容的。)

您是否考虑制作网络应用程序 - 可能使用FastCGI,甚至是某些HTTP服务器库,如libonionWt?它会使用通常的浏览器“外观和感觉”......

请注意,感谢像X11这样的EWMH约定,用GTK编写的应用程序可以与用Qt编写的应用程序互操作(反之亦然),即使它们看起来略有不同......正如andlabs评论的那样,你可以为它们制作合适的主题,使它们看起来更相似。

此外,一些Unix和Linux应用程序(甚至是最近的应用程序,如git)主要是command line个应用程序(完成大部分工作),还有一些较小的GUI包装器,可能与CLI通信应用(例如通过管道)。也许您可以同样组织您的应用程序:通过一些命令行可执行文件完成大部分工作并添加一些 small  上面的GUI包装器(然后你可以在GTK中为Gnome编写一个包装器,在Qt中为KDE编写另一个包装器)。您甚至可以通过设计和开发实现您的功能的free software 库来实现更进一步,将大部分GUI工作留给其他开发人员(并接受对您的免费软件库的改进)? / p>