在Qt4中点击系统托盘图标中的颜色?

时间:2011-07-08 08:14:14

标签: qt macos qt4 system-tray

基本上我想在点击它时(仅在Mac应用程序上正常)反转我的systrayicon osx应用程序的颜色,这是mac应用程序的默认行为。当Mac上不支持aboutToHide()时,我该怎么做呢?

我可以以某种方式编码吗?使用qt 4.7.3

2 个答案:

答案 0 :(得分:2)

我不是为mac编写的,但尝试捕捉点击事件并手动设置反转颜色的图标......

void <YourClass>::onTrayIconActivated(QSystemTrayIcon::ActivationReason reason)
{
    if(reason==QSystemTrayIcon::Trigger)
    {
        <Your tray object>->setIcon(<Icon with inverted colors>);
    }
}

将其连接到trayIcon的信号activated()

如果Mac上的默认行为是反转图标颜色,您可以使用计时器或类似的东西。

答案 1 :(得分:1)

您可以为图标设置选定的状态像素图,例如myIcon->addPixmap(":/systray-selected.png", QIcon::Selected);