为什么有些控件没有Windows句柄?
|
我想获得一些控件的窗口句柄以使用它来做一些事情(需要一个句柄)。这些控件在另一个应用程序中。
奇怪的是;我发现许多控件没有Windows句柄,例如Windows资源管理器中工具栏(?)中的按钮。只需尝试获取Folder / Search /(等)按钮的句柄。它只是给我0。
所以..第一个问题:为什么有些控件没有Windows句柄?难道不是所有人都在控制着窗户吗? (只不过是在谈论标准控件,就像我希望在Windows资源管理器中看到它们一样,在窗格等上都没有自定义内容。)
这就引出我的第二个问题:如果您无法使用它们,该如何使用它们(例如使用EnableWindow)?
非常感谢您的投入!
编辑(附加信息):
Windows资源管理器只是一个示例。我经常遇到这个问题-在另一个应用程序中(我真正感兴趣的一个专有应用程序)。我有“物理”控件(因为我可以获得这些控件的AutomationElement),但是它们没有Windows句柄。另外,我试图发送一条消息(SendMessage)以获取按钮状态,试图找出它是否被按下(这是一个标准按钮,似乎仅通过该消息就表现出了这种行为-至少直到我已经看到了,此外,尽管Windows资源管理器按钮显示了类似的行为,就像按钮样式的复选框一样,尽管它们是(推送)按钮,但按下按钮的状态可以比标准按钮持续更长的时间。 )。 SendMessage需要一个窗口句柄。
ToolBar是否以某种方式改变其子元素的行为?带走他们的窗户把手或类似的东西? (使用父句柄/控件ID进行识别吗?)但是,如何在需要Windows句柄的控件上使用函数呢?
没有找到相关结果
已邀请:
3 个回复
款去芳尾脊
雇砰
款去芳尾脊