powerbuilder - 将事件添加到动态声明的控件

标签 powerbuilder

这是一个 PowerBuilder 问题。我正在使用 PowerBuilder 12 Classic。

我有一个窗口,其中大部分控件都是使用 OpenUserObject 在代码中动态声明的。单击这些控件之一时,应在容器窗口中打开一个面板。但是,我不确定如何从动态声明的控件中触发事件。控件类型是自定义的(标准可视对象中的自定义代码,singleLineEdit),并且我在控件的 getfocus 事件中声明了自定义代码。但如何引用容器窗口?

我知道我可以通过名称引用容器窗口,但这是非常 self 限制的。有没有其他方法可以做到这一点?

最佳答案

如果您不需要传递参数,您可以使用 parent.triggerEvent("event_name") 在窗口中触发事件。如果事件或函数是在窗口的祖先(例如 PFC)中定义的,您可以将 parent 转换为祖先类型并直接调用。使用 PFC 的示例:

w_master w_container

w_container = parent
w_container.of_SetUpdateObjects({this})

关于powerbuilder - 将事件添加到动态声明的控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3790033/

相关文章:

Powerbuilder 语言文档

Powerbuilder 动态阵列操作

oracle - 是否可以在 DataWindow 查询中使用 `WITH` 子句?

introspection - 用于 PowerBuilder 应用程序的 Spy++

.net - PowerBuilder 12 的可能性

来自 PowerBuilder(10 或 11.5)的 .NET dll

case - 尝试在 Powerbuilder 中做一个 Case 语句

powerbuilder - 如何在PowerBuilder上使用Windows资源管理器文件浏览器?

PowerBuilder数据窗口