PowerBuilder 12.5:自动实例化NVO变量值传递至窗口异常问题
PowerBuilder变量值传递问题分析与解决
问题根源
- 实例对象不匹配:你在窗口中声明
nvo_test nvo时,相当于创建了一个全新的nvo_test实例,这个新实例的il_val会使用默认值1,和你之前已经设置为4的那个自动实例化对象完全是两个独立的对象。自动实例化的非可视化对象是已经存在的特定实例,而非重新声明就能引用到的。 - 变量名笔误:问题中明确nvo_test的实例变量是
il_val,但你窗口代码中写的是nvo.il_row,变量名称不匹配(不过你提到返回值为1,推测实际代码可能是输入笔误,应为il_val)。
解决方法
如果你的自动实例化nvo_test是全局实例(比如在应用对象或全局变量中定义的),直接引用该已存在的实例即可,不要重新声明新对象:
Long l_val // 替换为你实际的自动实例化对象名称,比如全局变量gnv_test l_val = gnv_test.il_val
如果是窗口级的自动实例化对象,确保引用的是窗口中已存在的那个实例,而非重新声明创建新实例。
内容的提问来源于stack exchange,提问作者learning
相关产品推荐
相关产品推荐

