在我的 (PowerBuilder) 应用程序中,我希望能够确定与给定窗口句柄相对应的 graphicobject
对象。
简单地迭代 Control[]
数组并比较每个子控件的 Handle()
函数返回的值是行不通的,因为不是所有的我的应用程序中的对象是主窗口的子窗口(考虑登录对话框)。
任何 PowerScript 或 C/C++ 解决方案都是可以接受的。
是否可能有一些窗口消息我可以发送到窗口句柄,并且该消息只能被 PowerBuilder 窗口理解,它会以其内部对象名称等进行响应?
最佳答案
是要求从handle中判断对象,还是只想识别一个对象,比如知道自己需要修改的代码在哪里?我制作了一个执行后者的工具,但它使用对象焦点,而不是窗口句柄。
(添加于 2010-06-21)对于不是主窗口子窗口的窗口,您可以使用 isValid()
显式检查每个窗口类名称。然后对于每个有效窗口,挖掘以查找句柄。只要您一次只打开窗口类的一个实例,这应该就可以工作。如果您打开多个实例,我认为您需要向这些窗口的 open
添加注册机制,以便应用程序能够访问它们。
关于c++ - 如何获得给定 HWND 句柄的 PowerBuilder 图形对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1708222/