怎样在一个窗口中给另一个窗口中的实例变量赋值?

velen 2005-08-29 05:07:18
PB中可以这样做吗?
...全文
187 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
rightyeah 2005-09-01
  • 打赏
  • 举报
回复
可以调用。有如下要点:
1、必须拥有被调用窗口的引用。一般常规的打开窗口方式为open(windowname),opensheet(windowname...),这样的命令,打开的窗口引用存放在与窗口类型同名的全局变量里面,所以可以直接用windowname.var_name来访问。如果使用Open( windowvar, windowtype {, parent } )这样的命令,窗口引用会存放在变量windowvar里面,用户必须保存好windowvar变量,才可以在适当的时候调用。当然,如果窗口直接可以通过某种手段传送数据,那么把某个窗口的this传递给另一个窗口,也是一种办法。
2、必须能够识别窗口内的实例变量。从对象继承的角度来说,任何窗口的实例都可以用一个window类型的变量保存,只不过通过这样一个变量,无法访问任何window类型定义以外的属性、方法、事件。这时候可以再定义一个指定窗口类型的变量,通过赋值取得窗口引用,即可使用相关的属性、方法、事件。另外,使用dynamic关键字也可以使用额外的方法和事件,但不能使用额外的属性以及实例变量
章无忌 2005-08-30
  • 打赏
  • 举报
回复
WINDOW G_PARENT
w_1 lw_window
lw_window = getparent().dynanmic
wscft 2005-08-30
  • 打赏
  • 举报
回复
其实一个实例窗口也是window 类型的,
WINDOW G_PARENT
改为
w_1 lw_window
...
看看还行不行呢?
hangzhou6274 2005-08-30
  • 打赏
  • 举报
回复
对不起,打错了,是dynamic不是dynanmic
hangzhou6274 2005-08-30
  • 打赏
  • 举报
回复
你可以在g_parent窗口里面写一个函数,然后用dynanmic来动态调用该函数来赋值,你去看这个玩意儿的帮助会对你有好处。
velen 2005-08-30
  • 打赏
  • 举报
回复
我定义了一个WINDOW变量.
WINDOW G_PARENT
G_PARENT.LB_A=FALSE
这样子编译通不过.提示:INCOMPATIBLE PROPERTY LB_A FOR TYPE WINDOW
必须用真正的窗口名才能编译通过.
W_1.LB_A=FALSE就可以.
但我必须用WINDOW变量才行,因为窗口是动态的.
章无忌 2005-08-29
  • 打赏
  • 举报
回复
在w_2中可以写
w_1.ls_a = 'aaa'
只有ls_a没被声明为私有变量
desegou 2005-08-29
  • 打赏
  • 举报
回复
可以,不过要保证两个两个都被打开,而且要修改的实例变量是public型的
myhexiong 2005-08-29
  • 打赏
  • 举报
回复
其实你可以搞成全局变量.
或者用其它方法,
比如说另一个窗口,直接取前面那窗口的值,

应该不是麻烦事..楼主可以再说详细一点.

1,077

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧