如何在按下托盘图标菜单操作时执行功能?

2024-05-12

int main( int argc, char* argv[] )
{
    QApplication oApp( argc, argv );

    QAction *action1;
    QMenu menu;

    QSystemTrayIcon TrayIcon( QIcon("favicon.ico") );

    TrayIcon.show();

    action1= new QAction("action1", NULL);

    action1->setStatusTip("Create a new file");


    menu.addAction(action1);
    TrayIcon.setContextMenu(&menu);

    return oApp.exec();
}

我怎样才能做到这一点,以便当我打开菜单并按时action1,函数被执行?


使用名为的槽创建新类(从 QObject 派生),例如我的插槽,然后:

class MyClass : public QObject {
Q_OBJECT
...
public slots:
    void mySlot();
};

myObject = new MyClass();
connect(action1, SIGNAL(triggered()), myObject, SLOT(mySlot()));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在按下托盘图标菜单操作时执行功能? 的相关文章

随机推荐

  • 附件名称编码失败

    我尝试发送一封带有附件的电子邮件 pdf 文件 但收件人收到的文件名称不同且没有 pdf 结尾 该文件的名称是希腊语 try MimeMessage message new MimeMessage session message setFr
  • 在 IntelliJ IDE 中找不到 Maven 插件

    我的项目中有一个新错误 位于 pom xml 文件中 我该如何修复它 IntelliJ IDEA中出现如下错误 Plugin org springframework boot spring boot maven plugin not fou
  • 何时使用属性而不是函数

    这可能是个人喜好的问题 但是什么时候在代码中使用属性而不是函数 例如 要获取错误日志 我可以说 string GetErrorLog return m ErrorLog 或者我可以 string ErrorLog get return m
  • PetaPOCO 和超过 4 个加入

    petapoco 是否能够实现以下目标 1 一次查询无限连接 2 一次查询无限的一对多关系 我查看了 PetaPOCO 它似乎无法执行超过 4 个连接 最长的签名如下所示 db Query 似乎它也支持一对多关系 但仅适用于一个复合对象 如
  • python sympy 中没有指数的解决方案

    当我运行这个程序时 我最终没有得到解决方案 但应该有一个解决方案 我相信 知道我做错了什么吗 如果你从 e2 方程中去掉 Q 它似乎可以正常工作 usr bin python from sympy import a b w r symbol
  • 需要帮助在 JavaScript 中过滤数组

    这是我在 JavaScript 中的数组 let myArray Bob Katy Bob Bob Katy 我想通过检查来过滤这个数组如果当前值等于其后或之前的值 我不太确定如何实现这一目标 但是 有人能给我指出一个方向吗 现在我知道如何
  • 将不同类型的对象与可比较的对象进行比较

    A java public class A implements Comparable private String id private String name public A String a String b id a name b
  • 使用父对象引用进行 XML 反序列化

    我有一个描述网站的 XML 文件 它由站点作为根节点组成 可以有页面 页面可以有按钮或文本框和对话框等对象 对话框也可以有对象 在相应的C 类中 全部派生自Element 当我反序列化 XML 时 如何才能引用正在构造的元素的父级 我被告知
  • Docker Toolbox (Windows):无效的卷规范

    配置 使用 Windows 10 Docker 工具箱 not原生 Docker 以便能够使用虚拟机 背景 有一个 Python 2 7 脚本应该运行 Docker 容器 代码如下所示 self docker containers run
  • Symfony2:twig 中的 form_widget 调用抛出异常“可捕获的致命错误......必须是 Symfony\Component\Form\FormView 的实例”

    当我在控制器操作中创建一个表单时 如下所示 form this gt createFormBuilder gt add field name gt getForm return array form gt form 我尝试在树枝模板中渲染此
  • webgl中绑定缓冲区的逻辑是什么?

    有时我发现自己在以不同顺序声明缓冲区 使用 createBuffer bindBuffer bufferdata 和在代码的其他部分 通常在绘制循环中 重新绑定它们之间挣扎 如果我在绘制数组之前不重新绑定顶点缓冲区 控制台会抱怨尝试访问超出
  • 将 XML 数据提取到 php [重复]

    这个问题在这里已经有答案了 我正在尝试从 XML 文件中提取数据 http freegeoip net xml google com http freegeoip net xml google com 您可以看到该文件的内容类似于
  • 如何使用 pytorch 同时迭代两个数据加载器?

    我正在尝试实现一个接收两张图像的暹罗网络 我加载这些图像并创建两个单独的数据加载器 在我的循环中 我想同时遍历两个数据加载器 以便我可以在两个图像上训练网络 for i data in enumerate zip dataloaders1
  • PHP if in_array 表示多个值

    我有一个由 3 到 12 个值之间的任意位置生成的数组 它根据帐户信息生成该数组 result ad gt user gt groups user username 我想检查这个数组是否有多个值 大约 4 或 5 个 如果其中有任何一个值
  • 使用 EAR 与 WAR 相比有何优势?

    我们正在 Wildfly 8 上部署 JavaEE 7 应用程序 之前 我们已将所有企业应用程序 WAR 多个 EJB JAR 文件 打包为 EAR 然而 现在 JavaEE 允许您将 EJB 打包在 WAR 文件中 或者作为 WAR 的
  • 由于合并而不允许 git revert 但未给出 -m 选项

    我正在尝试使用 revert 命令恢复到 git 中的某个 哈希 号 我正在使用以下命令 git revert c14609d74eec3ccebafc73fa875ec58445471765 但是 我得到以下返回 错误 提交 c14609
  • SQL:将现有列设置为 MySQL 中的主键

    我有一个包含 3 列的数据库 id name somethingelse 该表没有设置索引 我收到 未定义索引 在 phpmyadmin 中id 是一个 7 位字母数字值 每行都是唯一的 我想将 Drugid 设置为主键 索引 我不知道有没
  • 在 Go 中跟踪 HTTP 请求时指定超时

    我知道通过执行以下操作来指定 HTTP 请求超时的常用方法 httpClient http Client Timeout time Duration 5 time Second 但是 我似乎不知道在跟踪 HTTP 请求时如何执行相同的操作
  • 非基于套接字的Java服务器[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 摆脱老派 我正在使用 Java SE 5 或 java v1 5 请不要告诉我升级 因为对于我正在处理的 这是私人的 我需要使用这个版本的
  • 如何在按下托盘图标菜单操作时执行功能?

    int main int argc char argv QApplication oApp argc argv QAction action1 QMenu menu QSystemTrayIcon TrayIcon QIcon favico