使用主机操作系统风格的跨平台GUI库

问题描述:

可能重复:
What cross platform GUI library has the most native feel for each platform?使用主机操作系统风格的跨平台GUI库

我知道有很多跨平台的GUI库 像

GTK

wxWidgets

但我要寻找的是使用主机操作系统的图形用户界面风格而不是它的own.I意味着我想我在每个操作系统的跨平台应用程序必须大概已经直接写入该操作系统的其他应用程序的GUI库。

那么,是它清楚了吗?

的问题是我不能接受的GUI库的风格,因为自己不漂亮(但他们不是丑陋:))。

+4

我认为wxWidgets的可能是你最安全的赌注。它试图在大多数情况下使用原生小部件。 – Vlad 2012-01-13 09:47:57

+0

你确定吗?我没有在网站上看到任何类似的内容。您可以链接到我已经写过此功能的网页吗? – Saleh 2012-01-13 09:52:32

+0

我无法让wxWidgets在Lion上编译最后两次我试过。 +1的Qt答案,这些天得到了更好的支持和LGPL许可证。 Qt的有可能重复和遗憾guyz就是这样 – synthesizerpatel 2012-01-13 09:54:02

尝试Qt,但只在OSX

+2

@pst,Qt可以选择使用本机外观。它甚至可以做“左/右”的确定键。 – 2012-01-13 09:55:30

+0

现在很久没有这样的事情,但很多人传播它。你使用VLC还是Clementine?两者都是Qt应用程序,它们在所有支持的平台上都非常本地化。 – 2012-01-13 09:56:21

+1

@pst:根据我的经验,Qt通常看起来是原生的,或者每个应用程序都有独特的感谢Qml或Stylesheets。 – 2012-01-13 09:57:42

因为它提到在Windows或特殊的按键提供了窗口小部件,这是常见的每个操作系统(Windows,Linux和OSX支持)的唯一子集,因此无色带上面,wxWidgets lib使用本地GUI呈现。但也有另一种方法,即用于Abiword文字处理器。您可以通过创建抽象来分离UI和应用程序逻辑 - 某种您自己的框架。因此,所有平台都有共同的部分 - 用于控件的应用程序逻辑和事件处理程序,而用于创建控件的UI代码依赖于平台。

我知道用这种方式实现GUI是相当困难的工作,但在这种情况下,您会得到一些东西,跨平台的库永远不会为您提供OS GUI标准中的差异 - 完全本机化的应用程序。

顺便说一句,你可以看看Abiword的资源(http://abisource.com/developers/)了解它是如何在那里实现的(跨平台部分是http://www.abisource.com/viewvc/abiword/trunk/src/af/)。也许这是过度杀伤力,但这是一个很好的起点。