论Qt中的QToolButton与QPushButton的淘气

来源:互联网 发布:淘宝主图怎么制作 编辑:程序博客网 时间:2024/04/28 21:30

在Qt中,按键的类定义主要有两类,一个使QToolButton,另一个就是QPushButton了,他们都是继承QWidget的控件。

相同处:都是按键

不同之处:1.点击触发的反应不同

                    2.用图片作为按键的背景的时候不同


下面详述:

  1.Qt中引用的图片怎么使用

        2.button按键如何设置背景图片

3.上述两种不同按键的类的差别在哪里


一、首先,Qt中的图片怎么使用呢?

1.需要的软件:photoshop,ico后缀的图片

  通常情况下,我们在网上下载或者自己设计的图片一般都有背景颜色,并且是不透明的,因此为了能够在控件上看到更加完美的的

图片信息,现在需要使用ps进行背景的透明化;

        a. 首先下载获取jpg、png等格式的图片;

b. 将这些图片转化为icon的格式,网址:http://www.ico.la/#downico,转化为icon格式的照片;

c. 将icon的图片拉进来,点击魔棒选项,点击背景,delete即可,然后保存为psd格式;

d. 新建一个项目,名字随你,背景内容点击“透明”即可,把刚才保存的psd格式拉进来这个幕布中,调整大小,按Enter键确认放进来;

f. 保存图片,输出的格式为icon,即可得到透明的icon图片。

2.使用:使用QIcon类函数进行设置

QIon(QString)


二、button按键如何设置背景图片

a. 根据上述已经得到的icon后缀格式的图片,那么现在进行设置源文件,在项目main.c所在目录中建立文件夹,名字一定必须是:resource,

把icon后缀的文件添加进来这个目录即可,并修改名字,这里假设有一个为play.ico文件;

b. 在Qt项目中,点击添加新文件,点击Qt选择Qt resource file选项,随便你添加图片源文件的名字,点击添加进本项目中;

c. 点击“添加”,添加前缀,这里修改为image,然后再点击“添加”中的添加文件,把在resource中的icon文件拉进来,并点击该图片,设置别名为play

d. 回到项目的构造函数中进行设置:

ui->pushButton->setIcon(QIcon(":image/play")); //设置背景图片的来源

ui->pushButton->setIconSize(QSize(ui->pushButton->width(),ui->pushButton->height())); //设置填充按键这么大的

ui->pushButton->setStyleSheet("border-style:flat");  //设置透明的

ui->toolButton->setIcon(QIcon(":image/play")); //设置背景图片的来源

ui->toolButton->setIconSize(QSize(ui->toolButton->width(),ui->toolButton->height())); //设置填充按键这么大的

ui->toolButton->setStyleSheet("border-style:flat");  //设置透明的

三、两种按键的不同点

QpushButton可能设计为图片背景之后,按键就好像没有按键的趣味了,感觉有点像触摸屏,因为没有按键的按下和释放的动作,或者

动作比较少,看不出效果

QToolButton就不同,完全很好,有按下释放的工作,图片的嵌入很好,不信,你自己试试看呗




0 0
原创粉丝点击