如何获取系统中所打开的所有窗体的标题?并列出来~

westdiamond 2003-10-18 02:10:56
同题目~ 小弟先拜谢一下~ :)
...全文
48 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
pankun 2003-10-19
  • 打赏
  • 举报
回复
1.先用 Finwindow 找到Desktop窗口句柄,所有窗口都是它的子窗口(如你有SPY++会看得很清楚),调用GetWindow()选GW_CHILD 可得其子窗口,选GW_HWNDNEXT或调用GetNextWindow()可得其平级下一窗口,作一递归函数既可得到所有窗口句柄;

2。对于带有title的窗口,调用GetWindowText()可得其标题,但要注意必须是该进程的顶级窗口,即其父窗口为Desktop,否则可能得到子窗口(如view)的显示内容,同理,调用SetWindowText()既可改变标题;

westdiamond 2003-10-19
  • 打赏
  • 举报
回复
GetWindow找出来的窗体怎么都没标题啊~
这样该怎么用Findwindow获得该窗体呢?
westdiamond 2003-10-19
  • 打赏
  • 举报
回复
谢谢前辈了~ :)
pankun 2003-10-18
  • 打赏
  • 举报
回复
EnumWindow
或FindWindow+GetWindow
westdiamond 2003-10-18
  • 打赏
  • 举报
回复
当然要包括其他程序的窗口标题~

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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