pbpl问题求助!!!!

birdslin 2003-11-07 03:52:13
我有一个窗口w_main,我在该窗口的open事件中进行菜单条的初始化操作。
w_main.open代码如下:
//----------- Init toolbar初始化菜单条 --------------
uo_toolbar_driver.of_setalign('Bottom')
uo_toolbar_driver.of_setbuttonsize(16)
uo_toolbar_driver.of_readmenu(menuid)
uo_toolbar_driver.of_draw()
wf_setmicrohelp('Ready..')
然后我有一个窗口w_test继承了w_main。我在w_test的open事件写:
string ls_contract
ls_contract=message.stringparm
messagebox('',ls_hth)
此时,取不到传进来的ls_contract数据。

但是,如果我不在父窗口初始化菜单条。而在子窗口的取ls_contract数据之后,初始化菜单条,那么是可以取到数据的。也就是说在菜单条的初始化这边有问题,我想问一下有什么办法来解决上述问题。因为有已经封装了父窗口,很多窗口都继承了父窗口。

谢谢!
...全文
46 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
birdslin 2003-11-20
  • 打赏
  • 举报
回复
我解决了,
方法如下:
在w_main.open代码如下:
this.postevent("ue_init_toolbar")

然后写ue_init_toolbar方法的代码如下:
//----------- Init toolbar初始化菜单条 --------------
uo_toolbar_driver.of_setalign('Bottom')
uo_toolbar_driver.of_setbuttonsize(16)
uo_toolbar_driver.of_readmenu(menuid)
uo_toolbar_driver.of_draw()
wf_setmicrohelp('Ready..')

然后我有一个窗口w_test继承了w_main。我在w_test的open事件写:
string ls_contract
ls_contract=message.stringparm
messagebox('',ls_hth)
此时,此时,可以取到传进来的ls_contract数据。

ropriest 2003-11-07
  • 打赏
  • 举报
回复
将变量改成Instance Variables
String is_contract

然后在子窗口调用,
看看子窗口的Open事件是不是Extend Ancestor Script是不是打勾了
jimly 2003-11-07
  • 打赏
  • 举报
回复
是不是把父窗口的open代码屏蔽了
mittee 2003-11-07
  • 打赏
  • 举报
回复
大大方方的用全局变量。
lmby 2003-11-07
  • 打赏
  • 举报
回复
修改父窗口,打开子窗口保存,关闭。

604

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 控件与界面
社区管理员
  • 控件与界面社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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