我正在尝试将Qt中的标准图标用于QToolButton,但我遇到了问题。我的代码是:
m_buttonZoomPlus->setIcon(QStyle::standardIcon(QStyle::SP_DesktopIcon));
我收到错误消息:
无法调用成员函数'QIcon QStyle :: standardIcon(QStyle :: StandardPixmap,const QStyleOption *,const QWidget *)const'无对象
这是什么意思?我是否必须创建一个空的QStyle对象并在其上调用standardIcon函数?
此外,我在这里找到了一个标准图标列表:http://doc.trolltech.com/main-snapshot/qstyle.html#StandardPixmap-enum
此列表是否详尽或是否有其他标准图标?我正在寻找放大/缩小图标的例子,我还没有找到它。
非常感谢你的帮助。
答案 0 :(得分:5)
这意味着standardIcon
不是静态方法,因此您无法以这种方式调用它。您需要构造一个QStyle
并对其进行适当的初始化,然后您可以使用该方法获取特定的图标。
编辑:杰里米是对的。如果您没有更改样式或定义自己的样式,只需使用以下内容:
QApplication::style()->standardIcon(QStyle::SP_DesktopIcon);