0

我的 QToolBar 中有一些 QActions。QAction 没有任何样式表,所以我试图在鼠标悬停时更改 QAction 图标。如何更改鼠标悬停时的 QAction 图标

4

1 回答 1

0

要更改鼠标悬停时的图标,您可以使用 setPixmap() 为 QIcon 的不同状态设置不同的像素图

见这里http://doc.qt.io/qt-5/qicon.html#pixmap

如果您的操作是在 QtCreator 或 QtDesigner 中创建的,您可以在属性 windowIcon 的属性菜单中更改

我在 QToolBar 中有一个动作,它会根据状态而变化,所以我在构造函数中创建了一个 QIcon 和一个 QPixmap,如下所示:

MainConfigWindow::MainConfigWindow(QWidget *parent) :        
    QMainWindow(parent),
    icoDisconnected(QIcon(":/icons/connect_128.png")),
    pixmapDisconnected(QPixmap(":/icons/disconnect_128.png"))
    {
        ui->setupUi(this);
        icoConnected.addPixmap(pixmapDisconnected,QIcon::Selected,QIcon::On);
        icoConnected.addPixmap(pixmapDisconnected,QIcon::Selected,QIcon::Off);
        icoConnected.addPixmap(pixmapDisconnected,QIcon::Active,QIcon::On);
        icoConnected.addPixmap(pixmapDisconnected,QIcon::Active,QIcon::Off);
    }
于 2017-09-21T13:21:38.870 回答