让你的 Qt 桌面程序看上去更加 native(一):简介

让你的 Qt 桌面程序看上去更加 native(一):简介

原创作品,允许转载,转载时请务必以超链接形式标明文章  原始出处 、作者信息和本声明。否则将追究法律责任。 http://devbean.blog.51cto.com/448512/455917
 
 

《让你的 Qt 桌面程序看上去更加 native》是一个系列文章。在这个系列中,你将会了解到如何让你的 Qt 桌面应用程序看上去更加 native。这里,我假设你已经清楚如何使用 Qt 编写桌面应用程序,因为文章中大多都是所谓的“细节”,而有时候恰恰是这些“细节”决定着用户体验。同时,这里的程序都是指桌面程序,不包括各个嵌入式平台。

关于 Qt 的介绍这里就不再赘述。这里只说明一点,相比其他的 C++ UI库,Qt 的处理实际上更类似 Java 的 Swing。Qt 的大部分组件都是由自己的绘图系统绘制出来的,这一点决定了 Qt 的效率不会像 MFC 或者 wxWidgets 那么高。同时,也正是由于这一点,使得 Qt 的桌面程序有时候看起来不是那么原生。

所谓 native,也就是这里所说的“原生”。任何桌面,Windows、GNOME、KDE、MacOS,都有着自己独特的风格。这种风格就称为 native。通常,获取一个窗口最最 native 的方式就是调用系统自己的函数,例如在 Windows 平台上使用 win32 API 创建一个窗口,这个窗口一定是 native 的。同样,你使用 Gnome 或者 KDE 的 API,也会获得一个原生的窗口。各个平台上的窗口组件布局也是不同的。在 Windows 上,菜单上面的 Help 总是出现在其他菜单项相邻的位置,菜单栏最右侧往往是一片空白。但是在 MacOS 上,Help 菜单是出现在菜单栏的最右侧,Help 菜单与其他菜单之间会有一大段空白。这就是两个平台的 native 风格的差异。如果你的程序仅仅按照 Windows 平台上的样式编写,MacOS 用户就会觉得这个程序很山寨。这对于一个真正跨平台的程序来说是不足的。

现在我们说明,这个系列所做的工作,就是让 Qt 桌面程序在 Windows、GNOME、KDE 和 MacOS 下都有着同原生程序一样的效果。当然,有些时候这个目的很难实现,因此,我们只是朝这个努力一下。

在开始正文之前,我们应该知道,实际上,各个平台都有自己的界面设计指南,告诉你在本平台上,确定按钮和取消按钮究竟谁在前谁在后,应用程序通常字体是什么,几号字等等。这些指导性文档都是可以在网上找到,下面我们列出来供大家参考:

Windows:Windows 用户体验交互指南(Windows User Experience Interaction Guidelines)

Apple:Apple 用户界面指南(Apple Human Interface Guidelines)

GNOME:GNOME 用户界面指南(GNOME Human Interface Guidelines)

KDE:KDE 用户界面指南( KDE User Interface Guidelines)

本文出自 “豆子空间” 博客,请务必保留此出处http://devbean.blog.51cto.com/448512/455917

 

转载于:https://www.cnblogs.com/dongxiao/archive/2012/06/10/2544346.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值