QT delete问题

alan9101 2013-03-24 05:57:44
void Dialog::changeEvent(QEvent *event)
{
trayIcon=new QSystemTrayIcon(this);
connect(trayIcon, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), this, SLOT(onSystemTrayIconClicked(QSystemTrayIcon::ActivationReason)));
}

void Dialog::onSystemTrayIconClicked(QSystemTrayIcon::ActivationReason reason)
{
switch(reason)
{
case QSystemTrayIcon::DoubleClick:
delete trayIcon;
break;
}
}

请问下如何在onSystemTrayIconClicked(QSystemTrayIcon::ActivationReason reason)中delete掉Dialog::changeEvent(QEvent *event)中的trayIcon?
...全文
250 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
alan9101 2013-03-29
  • 打赏
  • 举报
回复
引用 9 楼 wggqt 的回复:
引用 8 楼 alan9101 的回复: 引用 7 楼 wggqt 的回复:trayIcon=new QSystemTrayIcon(QIcon("LOGO.ico"),this); trayIcon->show(); 这个不能解决我的问题 代码没有问题 ,我实际测试了一下 delete成功了 你看是不是你delete之后有触发什么函数 又生成了trayIcon
我找到原因了,谢谢。代码被重新调用
qt初体验 2013-03-29
  • 打赏
  • 举报
回复
引用 8 楼 alan9101 的回复:
引用 7 楼 wggqt 的回复:trayIcon=new QSystemTrayIcon(QIcon("LOGO.ico"),this); trayIcon->show(); 这个不能解决我的问题
代码没有问题 ,我实际测试了一下 delete成功了 你看是不是你delete之后有触发什么函数 又生成了trayIcon
alan9101 2013-03-28
  • 打赏
  • 举报
回复
引用 7 楼 wggqt 的回复:
trayIcon=new QSystemTrayIcon(QIcon("LOGO.ico"),this); trayIcon->show();
这个不能解决我的问题
qt初体验 2013-03-28
  • 打赏
  • 举报
回复
trayIcon=new QSystemTrayIcon(QIcon("LOGO.ico"),this); trayIcon->show();
alan9101 2013-03-27
  • 打赏
  • 举报
回复
引用 5 楼 jiangcaiyang123 的回复:
编译没有错误吧,说说运行的情况。
就是当运行到这一行时,能connect(trayIcon, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), this, SLOT(onSystemTrayIconClicked(QSystemTrayIcon::ActivationReason)));连接到void Dialog::onSystemTrayIconClicked(QSystemTrayIcon::ActivationReason reason)但是双击时无法对delete trayIcon;进行操作,但是在delete trayIcon;上一句加QDebug有输出。
彩阳 2013-03-26
  • 打赏
  • 举报
回复
编译没有错误吧,说说运行的情况。
alan9101 2013-03-26
  • 打赏
  • 举报
回复
引用 3 楼 qq214517703 的回复:
引用 2 楼 alan9101 的回复:引用 1 楼 qq214517703 的回复:不就是你那样做了么? 不行,出来的话我还需要提问吗? 那你至少说下 你那样子 出现什么问题吧。 亲~
就是delete语句不能执行,但是能进到这个case中
雲天之巔 2013-03-25
  • 打赏
  • 举报
回复
引用 2 楼 alan9101 的回复:
引用 1 楼 qq214517703 的回复:不就是你那样做了么? 不行,出来的话我还需要提问吗?
那你至少说下 你那样子 出现什么问题吧。 亲~
alan9101 2013-03-25
  • 打赏
  • 举报
回复
引用 1 楼 qq214517703 的回复:
不就是你那样做了么?
不行,出来的话我还需要提问吗?
雲天之巔 2013-03-24
  • 打赏
  • 举报
回复
不就是你那样做了么?

16,215

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧