怎样获取某软件窗口在桌面上的序号?

zjnuan 2019-01-20 08:38:58
即是所有软件窗口在桌面堆叠,会有一个次序,现在想知道怎样获取某软件窗口在桌面上的序号?
...全文
920 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjnuan 2019-02-08
  • 打赏
  • 举报
回复
引用 10 楼 胖叔叔写代码 的回复:
https://stackoverflow.com/questions/825595/how-to-get-the-z-order-in-windows 我想这就是你要找的资料。
这个很好!
zjnuan 2019-02-08
  • 打赏
  • 举报
回复
引用 6 楼 张天星 的回复:
窗口层次关系。https://wenku.baidu.com/view/a7e639c90b4e767f5bcfce8f.html
这个方法还是获取不了序号。
luj_1768 2019-01-23
  • 打赏
  • 举报
回复
桌面上不同窗口可能是保存在链表里被系统使用的,访问加速是使用句柄类似技术实现的,要确认某软件窗口在桌面上的序号需要做链表的遍历。这种序号有什么用么?如果需要,可以改用array 存储窗口数据,这样就简单了。
  • 打赏
  • 举报
回复
https://stackoverflow.com/questions/825595/how-to-get-the-z-order-in-windows 我想这就是你要找的资料。
  • 打赏
  • 举报
回复
https://docs.microsoft.com/zh-cn/windows/desktop/apiindex/api-index-portal 上面没细看就发出来了,自己去这边找找吧,我记得是z-index的但是现在搜索这个关键字全是css
  • 打赏
  • 举报
回复
引用 2 楼 zjnuan 的回复:
[quote=引用 1 楼 张天星 的回复:] 。。。啥序号,你是说句柄么
不是句柄。是指某软件窗体在桌面上的排序序号。可以这么说,一堆打开的软件放在桌面上,肯定有个先后顺序。[/quote] https://msdn.microsoft.com/zh-cn/library/windows/apps/system.windows.controls.canvas.setzindex(v=vs.105).aspx 一般来说不是软件的先后顺序,是到元素级别的先后顺序,你可以看看msdn上的信息,其实是有的。
张天星 2019-01-20
  • 打赏
  • 举报
回复
窗口层次关系。https://wenku.baidu.com/view/a7e639c90b4e767f5bcfce8f.html
  • 打赏
  • 举报
回复
windows SDK api 一部分是公开写成书的,当然更多是人家自己用的函数。内部数据结构更是没必要让外部随便读写的。
  • 打赏
  • 举报
回复
那你需要找本 c++ 开发 windows 驱动程序的教程看看,查看 windows SDK 数据结构,并且使用内核级的编程方式来读取 windows 内部数据。
zjnuan 2019-01-20
  • 打赏
  • 举报
回复
例如,排在最前端显示的软件窗体,序号就是0。
zjnuan 2019-01-20
  • 打赏
  • 举报
回复
引用 1 楼 张天星 的回复:
。。。啥序号,你是说句柄么

不是句柄。是指某软件窗体在桌面上的排序序号。可以这么说,一堆打开的软件放在桌面上,肯定有个先后顺序。
张天星 2019-01-20
  • 打赏
  • 举报
回复
。。。啥序号,你是说句柄么
橘子皮... 2019-01-20
  • 打赏
  • 举报
回复
引用 5 楼 以专业开发人员为伍 的回复:
windows SDK api 一部分是公开写成书的,当然更多是人家自己用的函数。内部数据结构更是没必要让外部随便读写的。
有没有QQ群什么的

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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