c++ - 如何获得给定 HWND 句柄的 PowerBuilder 图形对象?

标签 c++ c windows powerbuilder

在我的 (PowerBuilder) 应用程序中,我希望能够确定与给定窗口句柄相对应的 graphicobject 对象。

简单地迭代 Control[] 数组并比较每个子控件的 Handle() 函数返回的值是行不通的,因为不是所有的我的应用程序中的对象是主窗口的子窗口(考虑登录对话框)。

任何 PowerScript 或 C/C++ 解决方案都是可以接受的。

是否可能有一些窗口消息我可以发送到窗口句柄,并且该消息只能被 PowerBuilder 窗口理解,它会以其内部对象名称等进行响应?

最佳答案

是要求从handle中判断对象,还是只想识别一个对象,比如知道自己需要修改的代码在哪里?我制作了一个执行后者的工具,但它使用对象焦点,而不是窗口句柄。


(添加于 2010-06-21)对于不是主窗口子窗口的窗口,您可以使用 isValid() 显式检查每个窗口类名称。然后对于每个有效窗口,挖掘以查找句柄。只要您一次只打开窗口类的一个实例,这应该就可以工作。如果您打开多个实例,我认为您需要向这些窗口的 open 添加注册机制,以便应用程序能够访问它们。

关于c++ - 如何获得给定 HWND 句柄的 PowerBuilder 图形对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1708222/

相关文章:

javascript - 如何使用rails自定义鼠标指针?

windows - Windows 7 是否回收进程 ID (PID) 编号?

c++ - 从字符串中提取不同数据类型的变量

c++ - 多态性和覆盖 C++ 类模板中的方法

c++ - 在 CMake 中处理多个 FIND_PACKAGE 调用

c - 如何转储线程堆栈

c - C中函数 "localtime"的异常行为

c++ - 需要澄清以下程序,

c - 检查输入数据是什么的逻辑

c# - 使用 C# 以编程方式打开魅力栏、电源栏和开始菜单