按钮的三态,指的是普通态、鼠标的停留态、点击态,三态是界面交互非常基本的一项功能,Qt中如果使用的是原始的按钮,三态的效果是有的,鼠标放上去会变色,点击的时候有凹陷的效果,工具栏中的图标也具备三态效果,但是如果自定义的图标这个效果就没有了。
推荐阅读:
Ubuntu 环境下Gtk与QT编译环境安装与配置
Ubuntu下QT控制台程序无法运行的解决方案以及XTerm的配置方法
Linux下为刚安装好的Qt Creator 创建桌面启动图标
Ubuntu 11.04安装QT Creator 2.5.0
下面整理下自定义按钮图标的方法,先看下我做的效果图:
图中表示了鼠标放在按钮上和按下的效果,完成了基本的三态,下面说下我的具体实现过程。
资源准备首先要准备好对应状态的按钮图标,按钮图标可以从网上搜集,图标需要找png格式的,ico格式的可以使用工具转换为png格式的,而且是背景透明的png格式,要想实现不同状态对应不同的效果还需要处理出其他状态,这就得靠PS来完成了,使用PS也非常简单,我这里使用PS的内阴影来实现按下的效果,用斜面和浮雕来实现鼠标停留效果。具体设置如下面两幅图所示:
图:使用内阴影实现的按下效果
图:使用斜面和浮雕实现的鼠标停留效果
处理好后的图标如下图。
加入工程将处理好的图标文件放入工程文件夹下,新建Qt-Qt资源文件。
输入文件名保存并加入工程。依次添加前缀,添加文件将文件加入工程,如下图所示。