当前位置: 代码迷 >> QT开发 >> ui中的pushButton和QIcon起冲突?该怎么处理
  详细解决方案

ui中的pushButton和QIcon起冲突?该怎么处理

热度:83   发布时间:2016-04-25 04:51:58.0
ui中的pushButton和QIcon起冲突?
我显示在UI界面拖拽了几个pushButton的按钮,并且设定了图片。执行后能正常显示。然后我想实现按下按钮后,按钮的图片变成另外一张,于是想用QIcon实现,发现以前设置的图片的在执行时不能显示了(一片空白)。
  定义了一个SLOT :void stop_slots();
  connect(pushButton,SIGNAL(clicked()),this,SLOT(stop_slots()));
void mplayer::stop_slots()
{
  QIcon icon;
  icon.addPixmap(QPixmap(QString::fromUtf8(":/jpg/image/play.jpg")));
  icon.addPixmap(QPixmap(":/jpg/image/play.jpg"));
  pushButton->setIcon(icon);
}
  如此设置后,程序执行时,都不能正常显示在UI设置的图片了(执行后什么都没做)。

------解决方案--------------------
探讨
第二QIcon icon;
是个局部变量退出 函数就没了,你改为全局变量试试看

------解决方案--------------------
探讨

谢谢 QSS没学过, 尝试了下QPushButton::pushButton_3:press{image: url(:/image/pause_enable.jpg)}; 对照帮助文档写的,怎么改都不正确。 估计要么是头文件问题,要么就不是直接写进去的函数。 但是找不到具体的例子学习。

------解决方案--------------------
探讨

引用:

你上面写错了好吧
QPushButton#pushButton_3:pre……

能不能用QSS将在UI中已经定义过的按钮改变?很多介绍都是重新定义了按钮,找不到跟定义过的对象有联系的函数。