Qt怎样创建图片按钮

更新: 2016-05-14 13:19 作者: wsfxzxb

在通常情况下,程序中的命令按钮都是普通的矩形。不过,如果想使程序的界面更为美观,那么创建图片按钮无疑是一个更好的举措。那么,Qt怎样才能创建图片按钮呢?

一、什么是图片按钮

在大多数情况下,我们见到的按钮都是长方形的,按钮上面有文字,说明该按钮的功能。

按风格来分,普通类型的按钮主要有扁平风格和拟物风格(也就是立体风格)两种。不过,由于现在流行扁平化风格,拟物风格的按钮立体性也不是那么明显了,只是微微有些阴影凸显体积而已。

Qt怎样创建图片按钮

Qt怎样创建图片按钮

而图片按钮,则是以一张事先绘制的图片来取代常规的矩形方框。当然了,图片的形状可圆可方,甚至是一些小动物也可以,以至达到完全看不出是按钮的程度。在下面的图片中,那个搜索图标就是一个图片按钮。

Qt怎样创建图片按钮

二、创建图片按钮的方法

要创建图片按钮,我们先往Qt工程中加入一个图片资源。如果有些朋友还不会怎么往Qt工程中添加资源,可参考我的经验《Qt怎样添加资源》,在此就不再多说了。

当然了,也可以在程序运行时加入图片文件,不过仍建议大家使用Qt资源文件。使用资源文件的好处是程序可以最大限度的减少依赖性。

另外,请注意,添加完资源后一定要点击菜单“文件”-“保存”。不保存资源文件的话,过会运行时图片有可能会显示不出来。


Qt怎样创建图片按钮

下面,就正式开始创建图片按钮的工作。首先,我们new一个按钮。

在此提醒大家注意,创建图片按钮时一般就不用再添加文字了。另外,动态创建按钮时建议指定一个父对象,以便于Qt在销毁窗口时自动销毁按钮,避免内存泄露。

Qt怎样创建图片按钮

再创建一个QIcon对象,将图片文件加载进来。在代码中,注意包含对应的头文件QIcon。另外,在Qt中,QIcon可以支持png图片。

Qt怎样创建图片按钮

接着,使用setIcon函数将图片设置到按钮上。

Qt怎样创建图片按钮

当然,我们还可以根据需要调整图片的大小。

Qt怎样创建图片按钮

最后,我们还可以将按钮扁平化,以实现在显示时去掉按钮的边框。

Qt怎样创建图片按钮

下面是最终运行时的样子,窗口左上角的小放大镜即是我们的图片按钮。

Qt怎样创建图片按钮

在创建QIcon对象时,无需使用new,这时因为设置图片到按钮上时会自动保存图片的一份副本。