Qt如何设置QAction 图标样式
时间: 2024-05-04 11:18:45 浏览: 521
在Qt中,可以使用`QAction`类的`setIcon(QIcon icon)`函数来设置图标。如果想要设置图标的样式,可以通过`QIcon`类的`addFile(const QString &fileName, const QSize &size, QIcon::Mode mode = QIcon::Normal, QIcon::State state = QIcon::Off)`函数来实现。其中,`mode`参数可以设置图标的模式,包括`QIcon::Normal`、`QIcon::Disabled`、`QIcon::Active`、`QIcon::Selected`等;`state`参数可以设置图标的状态,包括`QIcon::On`和`QIcon::Off`。
例如,设置一个大小为32x32、普通模式下为绿色的图标,可以这样写:
```cpp
QIcon icon;
icon.addFile(":/icons/icon.png", QSize(32, 32), QIcon::Normal, QIcon::On);
icon.addFile(":/icons/icon_disabled.png", QSize(32, 32), QIcon::Disabled, QIcon::On);
icon.addFile(":/icons/icon_hover.png", QSize(32, 32), QIcon::Active, QIcon::On);
icon.addFile(":/icons/icon_selected.png", QSize(32, 32), QIcon::Selected, QIcon::On);
QAction *action = new QAction("Action", this);
action->setIcon(icon);
```
在这里,`addFile`函数的第一个参数是图标文件的路径,第二个参数是图标的大小,第三个参数是图标的模式,第四个参数是图标的状态。通过添加不同的文件和设置不同的模式和状态,可以实现不同样式的图标。
阅读全文