linux托盘图标闪烁qt,Qt5 实现程序图标以及动态托盘闪烁图标

http://www.voidcn.com/article/p-goboshgv-zx.html

作者Attilax ,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http://blog.csdn.net/attilax 1.应用程序图标:   ---------------------------- RC_ICONS = default.ico  .默认路径是项目path..会编译到个exe黑头.. 2.系统托盘图标: -------------------------  #include  #include 下列的代码放的个构造函数黑头..   //c923  style tyay icon  pannelIcon = new QSystemTrayIcon(this); pannelIcon->setIcon(QIcon("tray.ico")); pannelIcon->show(); pannelIcon-> setToolTip("tray tip c923");         //设置托盘图标的提示信息 不过.会发现显示不出来.主要十路径问题..tray.ico的路径.  跟踪查看进程工作路径working directory  -------------------------------------------------------  processexporlere , ritkey>prroper> image >curr dir  >>  视图当前working directory.. 发现到个build路径..  要更改路径到个qtc2.8的.>>projects> build & run >>run settting >>run working derictory ....不过一般不需要更改这个.  加个run step,让qtc 运行的之前不个 *.ico复制到个build路径.走OK兰..  command: cmd.exe  arguments:  /c copy %{sourceDir}\*.ico  %{buildDir}  working dericetory: %{buildDir} (default)    路径要用反斜杠了..用斜杠错误.   D:\qtworkspace\atiqtc9/tray.ico  D:\qtworkspace\build-atiqtc9-deskc9-Debug   // 命令语法不正确。 注意   copy D:\qtworkspace\atiqtc9\tray.ico  D:\qtworkspace\build-atiqtc9-deskc9-Debug   查看cqt变量内容  -----------------------  直接输入类k上面走出来兰.. 3.动态托盘闪烁图标: ---------------------------- 这个走要用timer实现兰..不过比较的时候发现.      QSystemTrayIcon->icon();  //  if(   &QSystemTrayIcon_cur==&ico_a)    地址不一样,日怪兰..只好用个int变量来标示.     源码主要下列的:  ------h文件加个slot 声明    private slots:       //c923 flashicon timer     void dosomethings();     c923 -----cpp #include  #include #include //c923  style tyay icon QSystemTrayIcon* pannelIcon ; //c923 //timer  flash icon QIcon ico_a; QIcon ico_b; int curIcon=0; ///c923 MainWindow::MainWindow(QWidget *parent) :     QMainWindow(parent),     ui(new Ui::MainWindow) {     ui->setupUi(this);    this->setAcceptDrops(true);     //setAcceptDrops(true); // [[1]]: 使label可接受拖放操作     //c923  style tyay icon  pannelIcon = new QSystemTrayIcon(this); pannelIcon->setIcon(QIcon("tray.ico")); pannelIcon->show(); pannelIcon-> setToolTip("tray tip c923");         //设置托盘图标的提示信息 //void show() //该函数适用于显示托盘图标的函数 //void showMessage(const QString & title, const QString & message,...) //timer  flash icon ico_a =QIcon("tray.ico"); ico_b=QIcon("default.ico"); QTimer* timer=new QTimer(this);     connect(timer,SIGNAL(timeout()),this,SLOT(dosomethings()));     timer->start(400); c923 } //c923 //timer  flash icon void MainWindow::dosomethings() {     qDebug() << "---timer event start--";     //do something  qDebug() << filename;     QIcon qi=pannelIcon->icon();   //  if(   &qi==&ico_a)     if(curIcon==0)     {         pannelIcon->setIcon(ico_b);     curIcon=1;     }     else     {curIcon=0;         pannelIcon->setIcon(ico_a);     }     pannelIcon->show();          //    emit outlogtext("abc"); } c923        参考:  C++用new来创建对象和非new来创建对象的区别 - GOD_YCA - 博客园.htm  在Qt Creator2.3中 qmake 建立 时设置自己的 环境变量! - jtop0的专栏 - 博客频道 - CSDN.NET.htm  Qt5:QSystemTrayIcon类实现程序托盘图标 - wowk - 博客园.htm  dist changes-2.2.0 in qt-creator qt-creator master - Qt by Digia.htm  Qt中timer使用 - 懒人的技术笔记 - 博客频道 - CSDN.NET.htm  Qt 定时器Timer使用 - PY4NT的日志 - 网易博客.htm

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值