QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1498|回复: 10

有没有什么办法可以判断一个窗口是否存在,谢谢

[复制链接]
发表于 2004-6-9 14:27:41 | 显示全部楼层 |阅读模式
我现在用查看线程是否存在来判断一个窗口是否存在,结果发现有时候窗口不在了,该线程仍然存在,不知道有什么其它办法可以判断某个窗口是否存在,谢谢!
发表于 2004-6-9 15:54:25 | 显示全部楼层
窗口和线程并不一定总是一致的,因为窗口可能需要依赖其他一些东西
回复

使用道具 举报

 楼主| 发表于 2004-6-9 16:10:23 | 显示全部楼层
那有没有什么办法判断某个窗口是否存在?
回复

使用道具 举报

发表于 2004-6-9 16:28:49 | 显示全部楼层
我想重要的是你如何标识一个窗口?并且如何得到这个窗口的pid。
回复

使用道具 举报

 楼主| 发表于 2004-6-9 17:31:01 | 显示全部楼层
我现在是要做一个管理器,管理几个程序,比如说mplayer,phoenix等,有一个程序启动后,其它的就不应该启动起来,那应该怎么判断?
回复

使用道具 举报

发表于 2004-6-9 17:41:40 | 显示全部楼层
那判断线程就可以了,做一个程序管理器?
回复

使用道具 举报

 楼主| 发表于 2004-6-9 17:59:03 | 显示全部楼层
就是因为判断线程有问题啊,有时候窗口关掉了,发现线程还在,那该怎么办啊?
回复

使用道具 举报

发表于 2004-6-9 18:27:28 | 显示全部楼层
估计你的程序结构是这样:一个线程管理一个程序,窗口是该线程拥有的资源之一,你关窗口,只是将线程的一个资源关掉,该线程并没有关,你可以在窗口的关闭按钮的回调函数中加上退出线程一项 要知道线程id  pthread_cancel
回复

使用道具 举报

 楼主| 发表于 2004-6-9 18:32:19 | 显示全部楼层
不好意思,说错了,应该是叫进程吧,我关掉的窗口是主窗口啊,是用exit(0)退出的,按道理不应该有残余的进程留着吧?
回复

使用道具 举报

发表于 2004-6-9 19:32:46 | 显示全部楼层
你用什么方法运行mplayer,phoenix的?
回复

使用道具 举报

 楼主| 发表于 2004-6-10 14:57:17 | 显示全部楼层
今天我又试了一下,是phoenix和rdesktop这两个程序退出的时候进程有可能残留着,我是用脚本直接调用这两个程序的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-8 06:12 , Processed in 0.072360 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表