qt类似于qq托盘图标闪烁的消息提示 (胡峰原创,代码已经过测试运行)

构造函数中

times=new QTimer (this);

times->setSingleShot(false);//true 表示循环一次 表示循环无数次

times->setInterval(650);

connect(times,SIGNAL(timeout()),this,SLOT(changeico()));

void MainWindow::timeico()

{

m=0;

times->start();

}

void MainWindow::changeico()//这里我们让其闪烁二十次

{

m++;

if(m==20)

{

times->stop();

}

if(m%2==0)

{

iTrayIcon->setIcon( QIcon(":/images/monter.png") );

}

else

{

iTrayIcon->setIcon( QIcon() );

}

}

void MainWindow::Maction(QSystemTrayIcon::ActivationReason wch)

{

switch(wch)

{

case QSystemTrayIcon::Trigger: times->stop();

iTrayIcon->setIcon( QIcon(":/images/monter.png") );break;//当用户单击时 我们让图标停止闪烁

default:;

}

}

因公司源码不便完全公布 只将其功能函数公布 用户直接调用皆可

你可能感兴趣的:(qq)