首页 > 其他分享 >QT QSystemTrayIcon创建系统托盘区图标失败

QT QSystemTrayIcon创建系统托盘区图标失败

时间:2024-09-12 23:51:00浏览次数:3  
标签:QtProject QT 代码 trayIcon QSystemTrayIcon icon 系统托盘 图标

前言

在开发个人项目时,需要在Windows系统托盘区创建一个图标,在代码中,我使用的是QTQSystemTrayIcon类进行图标创建,但是在加上图片资源后,一直没有图标显现。我使用的是Qt6Windows11系统。

示例代码

    QSystemTrayIcon *trayIcon = new QSystemTrayIcon(this);
    trayIcon->setIcon(QIcon("D:\QtProject\icon\debug\Resoure\icon.png"));

    trayIcon->show();

上述就是我在项目中的具体代码,一直无法成功创建图标。
在检擦了资源路径的准确性后,我使用QFile区判断文件是否存在。

	qDebug()<<QApplication::applicationDirPath();
	QString path = QApplication::applicationDirPath() + "\Resoure\icon.png";
	QFile files(path);
	if(!files.exists())
	{
		qDebug()<<"file not exists";
	}

上述代码在执行时一直输出file not exists,但是图片资源文件确实是在这个路径下。
在我打印上述代码中的变量path后,问题的原因浮现:

D:\QtProject\icon\debug\Resoure\icon.png

这个路径是我直接从windows的资源管理器上复制下来的,我遗忘了一点,\ 在C++语法中具有转义的作用,所有该处资源地址一直是不对的;

D:/QtProject/icon/debugResoureicon.png

结论

在字符串中,需要注意转义字符的问题,特别是使用地址的时候

标签:QtProject,QT,代码,trayIcon,QSystemTrayIcon,icon,系统托盘,图标
From: https://blog.csdn.net/m0_64240990/article/details/142153493

相关文章

  • pyqt、pyside界面关闭后自动保存已设置参数
    超简单、低耦合!pyqt、pyside界面关闭后自动保存已设置参数文章目录超简单、低耦合!pyqt、pyside界面关闭后自动保存已设置参数前言正文初始思路实现思路1.`getattr()`:用于返回一个对象的属性值。2.`findChildren()`:获得满足条件的所有子对象代码实现`restore_scr......
  • QT绘图控件
    下载示例代码voidPlanetSystem::initSystem(){//PlanetNode(公转半径,公转速度,自身半径,自转速度,颜色)rootPlanet=newPlanetNode(0,0.0f,40,1.5f,QColor(255,0,0));PlanetNode*p0=newPlanetNode(100,1.5f,15,1.5f,QColor(255,255,0));......
  • MQTT 协议概述
    目录一、概述二、协议模型1、组成部分2、客户端3、服务器三、MATT通信过程1、连接服务器2、订阅主题3、发布消息4、取消订阅5、断开连接四、MQTT数据包结构1、MQTT固定头2、MQTT可变头3.Payload消息体五、示例演示一、概述MQTT(MessageQueuingTelemetryTr......
  • QT中的TCP网络通信
    目录学习内容:1. 服务器端(QTcpServer)头文件 源文件2. 客户端(QTcpSocket)头文件源文件 课外作业:使用绘制事件完成钟表的绘制学习内容:1. 服务器端(QTcpServer)        1>使用QTcpServer类实例化一个对象,就得到了一个服务器端        2>调用该......
  • qt程序关闭界面后,进程依然没有退出
    一种关闭界面彻底退出的方式,main.cpp中加入//启用退出锁定QCoreApplication::setQuitLockEnabled(true);//在应用程序退出时终止后台进程QObject::connect(&a,&QCoreApplication::aboutToQuit,[](){QProcess::startDetached("taskkill/F/I......
  • Qt 中实现异步散列器80
    前言在前面两篇实战文章中:OpenTelemetry实战:从零实现分布式链路追踪OpenTelemetry实战:从零实现应用指标监控:西部世界官网覆盖了可观测中的指标追踪和metrics监控,下面理应开始第三部分:日志。但在开始日志之前还是要先将链路追踪和日志结合起来看看应用实际使用的实践。......
  • 震惊!!一男子用尽了各种方式都搜不到这个资源,于是他竟然将手伸向了......!?pyqt pyside
    震惊!!一男子用尽了各种方式都搜不到这个资源,于是他竟然将手伸向了......!?pyqtpyside随窗口自适应、可缩放、拖动QLabel需求场景实现功能和使用1.参数设置2.设置图片3.缩放4.拖动5.小惊喜(裁剪图片)完整使用案例1.使用QtDesigner设计一个简单界面2.引用制......
  • QT使用定时器事件驱动完成定时播报效果
    widget.h#ifndefWIDGET_H#defineWIDGET_H#include<QWidget>#include<QObject>#include<QPushButton>#include<QLineEdit>#include<QLabel>#include<QTimer>#include<QString>#include<QTime>#include......
  • Qt 中实现异步散列器
    【写在前面】在很多工作中,我们需要计算数据或者文件的散列值,例如登录或下载文件。而在Qt中,负责这项工作的类为 QCryptographicHash。关于 QCryptographicHash:QCryptographicHash是Qt框架中提供的一个用于生成加密散列(哈希值)的类。该类可以将任意长度的输入(二进制或文......
  • Qt使用绿色pdf阅读器打开文件
    1.下载SumatraPDF2.设置 3.代码voidMainWindow::on_pushButton_clicked(){QProcess*process=newQProcess();QStringfilePath="C:\\Users\\jude\\Desktop\\su\\11.pdf";QStringsumatraPath="C:\\Users\\jude\\Deskt......