【QT】想在QButton上添加背景图片,不知道怎么才能实现
是不是用setIcon(QIcon(...));?如果是的话,省略号那里的路径应该怎么写啊?要不要加到资源文件里?...
是不是用setIcon(QIcon(...));?
如果是的话,省略号那里的路径应该怎么写啊?要不要加到资源文件里? 展开
如果是的话,省略号那里的路径应该怎么写啊?要不要加到资源文件里? 展开
1个回答
展开全部
//normal.png,hovered.png,pressed.png这三张图片
//均放在pro文件所在的目录
QString qss =
"QPushButton:!hover:!pressed{border-image:url(normal.png)}" //默认
"QPushButton:hover{border-image:url(hovered.png)}" //鼠标hover
"QPushButton:pressed{border-image:url(pressed.png)}" //鼠标按下
;
//设置style sheet
ui->pushButton->setStyleSheet(qss);
代码如上,有不清楚的地方再说。
ps:用setIcon这种方法不能达到你期望的效果。
//均放在pro文件所在的目录
QString qss =
"QPushButton:!hover:!pressed{border-image:url(normal.png)}" //默认
"QPushButton:hover{border-image:url(hovered.png)}" //鼠标hover
"QPushButton:pressed{border-image:url(pressed.png)}" //鼠标按下
;
//设置style sheet
ui->pushButton->setStyleSheet(qss);
代码如上,有不清楚的地方再说。
ps:用setIcon这种方法不能达到你期望的效果。
追问
成功了,是不是得加到资源文件里?
追答
资源文件只是一种方式,如果你愿意当然可以加载到资源文件之中。
如果你要加载资源文件,得采用下面的方式,假设你资源文件的路径为 /images/
QPushButton:hover{border-image:url(:/images/hovered.png)}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |