当前位置: 首页 > news >正文

哪个网站做批韩国护肤品批发seo专业培训费用

哪个网站做批韩国护肤品批发,seo专业培训费用,淘宝网站推广怎么做,深圳高端网站建设报价文章目录一、托盘图标及相关操作示例图1.消息通知操作2.托盘图标闪烁3.托盘图标操作响应二、我所遇到的问题三、源码CMainWindow.hCMainWindow.cppCMainWindow.ui总结一、托盘图标及相关操作示例图 1.消息通知操作 下方为消息通知操作,可能是因为录屏原因导致消息…

文章目录

  • 一、托盘图标及相关操作示例图
    • 1.消息通知操作
    • 2.托盘图标闪烁
    • 3.托盘图标操作响应
  • 二、我所遇到的问题
  • 三、源码
    • CMainWindow.h
    • CMainWindow.cpp
    • CMainWindow.ui
  • 总结

一、托盘图标及相关操作示例图

1.消息通知操作

下方为消息通知操作,可能是因为录屏原因导致消息弹窗未弹出(无图标通知也会带icon,考虑是windows的原因)。
在这里插入图片描述
正常消息提示如下:
在这里插入图片描述

2.托盘图标闪烁

在这里插入图片描述

3.托盘图标操作响应

下方对托盘图标进行了基本的鼠标操作,值得一提的是,双击之前会先触发单击操作。
在这里插入图片描述

二、我所遇到的问题

  1. 要做闪烁操作时,需要更新图标,且我在测试时,更新的图标路径不能为空,否则没有闪烁效果。
  2. 要显示托盘图标需要主动调用托盘图标的show函数。
  3. 当笔记本通知无效时考虑是设置问题,打开下图选项即可。
    在这里插入图片描述

三、源码

CMainWindow.h

#ifndef CMAINWINDOW_H
#define CMAINWINDOW_H#include <QTimer>
#include <QMainWindow>
#include <QSystemTrayIcon>
#include <QAbstractButton>QT_BEGIN_NAMESPACE
namespace Ui { class CMainWindow; }
QT_END_NAMESPACEclass CMainWindow : public QMainWindow
{Q_OBJECTpublic:CMainWindow(QWidget *parent = nullptr);~CMainWindow();private slots:/*** @brief on_systemTrayActivated 托盘图标响应槽函数* @param reason 响应操作(支持单击,双击,右键,滚轮按下等)*/void on_systemTrayActivated(QSystemTrayIcon::ActivationReason reason);/*** @brief on_btnGroup_buttonClicked 按钮组点击槽函数* @param btn 点击的按钮*/void on_btnGroup_buttonClicked(QAbstractButton *btn);/*** @brief on_btnTwinkle_clicked 闪烁响应槽函数*/void on_btnTwinkle_clicked();// QObject interface
protected:/*** @brief timerEvent 定时器事件* @param event 定时器事件对象*/void timerEvent(QTimerEvent *event);private:Ui::CMainWindow *ui;QSystemTrayIcon *m_sysTrayIcon; // 托盘图标对象int             m_iTimer;   // 定时器接收变量};
#endif // CMAINWINDOW_H

CMainWindow.cpp

#include "CMainWindow.h"
#include "ui_CMainWindow.h"#include <QDebug>CMainWindow::CMainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::CMainWindow)
{ui->setupUi(this);// 创建托盘图标对象m_sysTrayIcon = new QSystemTrayIcon(this);// 设置托盘图标m_sysTrayIcon->setIcon(QIcon(":/setting.png"));// 设置悬浮提示文本m_sysTrayIcon->setToolTip(u8"托盘测试");// 显示托盘图标m_sysTrayIcon->show();// 托盘按钮激活信号槽connect(m_sysTrayIcon, &QSystemTrayIcon::activated, this, &CMainWindow::on_systemTrayActivated);
}CMainWindow::~CMainWindow()
{// 释放指针对象delete m_sysTrayIcon;delete ui;
}void CMainWindow::on_systemTrayActivated(QSystemTrayIcon::ActivationReason reason)
{//! 根据reason对象响应对应操作//! 需要对应的操作在对应模块中添加即可switch (reason){case QSystemTrayIcon::Unknown:{ui->textBrowser->append(u8"未知原因");break;}case QSystemTrayIcon::Context:{ui->textBrowser->append(u8"上下文菜单");break;}case QSystemTrayIcon::DoubleClick:{ui->textBrowser->append(u8"双击");break;}case QSystemTrayIcon::Trigger:{ui->textBrowser->append(u8"单击");break;}case QSystemTrayIcon::MiddleClick:{ui->textBrowser->append(u8"滚轮按下");break;}default:break;}
}void CMainWindow::on_btnGroup_buttonClicked(QAbstractButton *btn)
{// 获取按钮文本QString text = btn->text();// 获取点击类型QSystemTrayIcon::MessageIcon msgIcon = static_cast<QSystemTrayIcon::MessageIcon>(btn->property("MessageIcon").toInt());// 显示点击按钮的对应信息m_sysTrayIcon->showMessage(text + u8"标题", text, msgIcon, 1000);
}void CMainWindow::on_btnTwinkle_clicked()
{if(0 == ui->btnTwinkle->text().compare(u8"停止闪烁")){// 杀死定时器killTimer(m_iTimer);// 更新按钮文本ui->btnTwinkle->setText(u8"开始闪烁");// 恢复托盘图标m_sysTrayIcon->setIcon(QIcon(":/setting.png"));}else{// 启动定时器m_iTimer = startTimer(500);// 更新按钮文本ui->btnTwinkle->setText(u8"停止闪烁");}
}void CMainWindow::timerEvent(QTimerEvent *event)
{// 定义标记变量static bool flag = false;//! 获取当前托盘图标字符串//! 此处 :/null.png 图片不存在,不过我自测的时候此处字符串不能为空QString iconStr = flag? ":/setting.png": ":/null.png";// 设置图标m_sysTrayIcon->setIcon(QIcon(iconStr));// 更新标记值flag = !flag;
}

CMainWindow.ui

<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0"><class>CMainWindow</class><widget class="QMainWindow" name="CMainWindow"><property name="geometry"><rect><x>0</x><y>0</y><width>340</width><height>251</height></rect></property><property name="windowTitle"><string>CMainWindow</string></property><widget class="QWidget" name="centralwidget"><layout class="QGridLayout" name="gridLayout"><item row="0" column="0" rowspan="5"><widget class="QTextBrowser" name="textBrowser"/></item><item row="0" column="1"><widget class="QPushButton" name="btnNoIcon"><property name="text"><string>无图标通知</string></property><property name="MessageIcon" stdset="0"><number>0</number></property><attribute name="buttonGroup"><string notr="true">btnGroup</string></attribute></widget></item><item row="1" column="1"><widget class="QPushButton" name="btnInfomation"><property name="text"><string>信息通知</string></property><property name="MessageIcon" stdset="0"><number>1</number></property><attribute name="buttonGroup"><string notr="true">btnGroup</string></attribute></widget></item><item row="2" column="1"><widget class="QPushButton" name="btnWarning"><property name="text"><string>警告通知</string></property><property name="MessageIcon" stdset="0"><number>2</number></property><attribute name="buttonGroup"><string notr="true">btnGroup</string></attribute></widget></item><item row="3" column="1"><widget class="QPushButton" name="btnCritical"><property name="text"><string>关键通知</string></property><property name="MessageIcon" stdset="0"><number>3</number></property><attribute name="buttonGroup"><string notr="true">btnGroup</string></attribute></widget></item><item row="4" column="1"><widget class="QPushButton" name="btnTwinkle"><property name="text"><string>闪烁</string></property><property name="MessageIcon" stdset="0"><number>3</number></property></widget></item></layout></widget><widget class="QMenuBar" name="menubar"><property name="geometry"><rect><x>0</x><y>0</y><width>340</width><height>23</height></rect></property></widget><widget class="QStatusBar" name="statusbar"/></widget><resources/><connections/><buttongroups><buttongroup name="btnGroup"/></buttongroups>
</ui>

总结

本文对托盘图标的细节操作并未定义,对应的操作放在对应位置即可,其余的就是注意托盘使用的问题即可。

友情提示——哪里看不懂可私哦,让我们一起互相进步吧
(创作不易,请留下一个免费的赞叭 谢谢 o/)

注:文章为作者编程过程中所遇到的问题和总结,内容仅供参考,若有错误欢迎指出。
注:如有侵权,请联系作者删除

http://www.lbrq.cn/news/2474065.html

相关文章:

  • 淮安网站建设自助快速建站
  • 品牌英语扬州网站seo
  • 外贸网站模板大全网页制作代码大全
  • 作业不会做网站上找人做靠谱吗朋友圈广告推广
  • 云南建设网站首页青岛百度竞价
  • 商洛免费做网站公司最新推广方法
  • 网站建设 技术支持 阿里太原百度seo排名
  • 网站开发 发票哈尔滨推广优化公司
  • 个人网站设计规划书个人主页网页设计模板
  • 电商网站建站怎样做自己的网站
  • 产品网站别人是如何做优化的百度推广营销中心
  • 博物馆网站做的最好的谷歌seo详细教学
  • 网站建设 百度推广网站推广策划方案
  • 做网站推广需要花多少钱网奇seo培训官网
  • 全是图片的网站怎么做seo网络营销推广方式包括
  • 网站建设海南手机端seo
  • 最好的外贸网站建设引擎搜索技巧
  • 全国开发一个网站需要多少钱全国疫情的最新数据
  • 网站建设网站管理如何推广网站运营
  • 做pc端的网站首页尺寸是多少百度人工投诉电话是多少
  • 信息网查询关于进一步优化当前疫情防控措施
  • 网站建设论坛报告今日刚刚发生的新闻
  • 常州建设局官方网站友情链接什么意思
  • 山东省住房和城乡城乡建设厅网站微信群发软件
  • p2p网站建设方案网站建设方案优化
  • 政府网站图解怎么做爱站长尾关键词挖掘工具
  • 怎么在国税网站上做实名认证吗app如何推广
  • 做家装网站客户来源多吗谷歌seo和百度seo
  • 创建全国文明城市建议简短seo是什么字
  • 顺德品牌网站青岛seo服务哪家好
  • 力扣刷题(第九十九天)
  • 设计模式十一:享元模式(Flyweight Pattern)
  • [2025CVPR-图象分类方向]SPARC:用于视觉语言模型中零样本多标签识别的分数提示和自适应融合
  • 黑马点评01 - 项目介绍 短信登录
  • Keepalived 原理及配置(高可用)
  • XCTF-crypto-幂数加密