社区
脚本语言
帖子详情
(高分)变量传递问题
xiaoqiangse
2010-01-08 01:57:37
在一个窗口中,有2个userobject,uo中含有sle控件,如果uo_1的sle修改,马上传递给uo_2,我在uo_1的ke_key事件中定义uo_2.ls_tmp=uo_1.ls_tmp,ls_tmp是变量,但是每次传递都有前一次key触发的修改,只有按了回车后才是最后修改的结果,例如在sle中输入1,uo_2的ls_tmp接收到的是空,再把1修改成2,uo_2的ls_tmp接收到是1,不知道为什么,如果大家还有好的变量传递方法也请指教(不能使用全局变量)
...全文
112
16
打赏
收藏
(高分)变量传递问题
在一个窗口中,有2个userobject,uo中含有sle控件,如果uo_1的sle修改,马上传递给uo_2,我在uo_1的ke_key事件中定义uo_2.ls_tmp=uo_1.ls_tmp,ls_tmp是变量,但是每次传递都有前一次key触发的修改,只有按了回车后才是最后修改的结果,例如在sle中输入1,uo_2的ls_tmp接收到的是空,再把1修改成2,uo_2的ls_tmp接收到是1,不知道为什么,如果大家还有好的变量传递方法也请指教(不能使用全局变量)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xiaoqiangse
2010-01-08
打赏
举报
回复
如果用窗体,处理起来的方法当然很多,换了uo局限就太大了
xiaoqiangse
2010-01-08
打赏
举报
回复
pb8(痴痴):
不是问题简单,是需求复杂,我也想简单处理,没法子啊
pb8
2010-01-08
打赏
举报
回复
呵呵,看楼主的需求有点迷糊,很简单的功能想复杂了
xiaoqiangse
2010-01-08
打赏
举报
回复
回eviler(脱掉裤衩了) :
实验过了,因为uo_1中含有多个sle,用了pbm_enchange,传递结果为空,可能pbm_enchange只能对寄主的修改才有效
eviler
2010-01-08
打赏
举报
回复
你的代码不是写在keydown中 获取的数据都是前一次的吗 , 那你使用 pbm_emchange 这个事件id 试试
pbwubaba
2010-01-08
打赏
举报
回复
帮忙顶~~
xiaoqiangse
2010-01-08
打赏
举报
回复
回eviler(脱掉裤衩了) :
uo_1为通用查询界面 ,uo_2为另一独立查询+显示结果界面,为2个userobject,没法直接uo_2.ls_tmp = This.Text ,我是通过第三个uo,即uo_3,把uo_1,uo_2整合在一起,通过uo_1和uo_2的instance variables 中定义public string ls_tmp,在uo_3中对uo_1和uo_2的ls_tmp传递的
xiaoqiangse
2010-01-08
打赏
举报
回复
首先谢谢pb8(痴痴)的耐心详细回答,不过因为程序是调用现有界面开发,窗体都是uo,无法使用openwithparm(),你上边提到的继承,因为是通用窗体,我本意就是要把这个通用查询做成一个uo,然后其他查询都在此继承,ue_update方法也是不可行,效果和直接使用key事件一样,修改后不能马上同步,在按下回车后才同步
eviler
2010-01-08
打赏
举报
回复
在 sle_1 新增时间 en_enchange ,event_id 选择 pbm_emchange
在这个事件中写代码 ,即可 uo_2.ls_temp = This.Text
使用 keydown 事件 ,触发的时机太靠前了, sle还没收到就触发了
pb8
2010-01-08
打赏
举报
回复
[Quote=引用楼主 xiaoqiangse 的回复:]
在一个窗口中,有2个userobject,uo中含有sle控件,如果uo_1的sle修改,马上传递给uo_2,我在uo_1的ke_key事件中定义uo_2.ls_tmp=uo_1.ls_tmp,ls_tmp是变量,但是每次传递都有前一次key触发的修改,只有按了回车后才是最后修改的结果,例如在sle中输入1,uo_2的ls_tmp接收到的是空,再把1修改成2,uo_2的ls_tmp接收到是1,不知?-
[/Quote]
针对你的问题,你可以在uo_1里面定义一个事件ue_update,事件id为空的,事件里面写上uo_2.ls_tmp=uo_1.ls_tmp
在keydown事件里面写上
this.Post Event ue_update()
maybe ok~~
pb8
2010-01-08
打赏
举报
回复
呵呵,推荐设计方式,
定义一个窗口基类w_parent,里面定义ue_find(string as_filter)事件,再定义一个实例变量
其他要调用它的窗口继承这个窗口
比如你的窗口为w_find,使用一个结构体把数据传过去
结构体内容为,us_find(
w_parent mywin
datawindow 你的数据窗口
...//其他数据窗口
)
us_find lus_find
lus_find.mywin=this
openwithparm(w_find,lus_find)
在w_find窗口中,定义一个实例变量us_find ius_find,
open事件里面
ius_find = Message.PowerObjectparm
需要同步的地方直接写就可以了,ius_find.mywin.postevent ue_find(你的数据)
xiaoqiangse
2010-01-08
打赏
举报
回复
补充说明:
由于可以开多个不同的查询窗口调用通用查询,所以如果使用全局变量会变得混乱
xiaoqiangse
2010-01-08
打赏
举报
回复
是想做一个通用查询窗口,这个窗口做成用户对象方便调用,因为查询条件随时可修改,所以该变量要修改后及时传递到显示窗口,open应该没法实现,因为那只有一次传递,ke_key的event id当然是keydown了
pb8
2010-01-08
打赏
举报
回复
如果只是需要访问相互之间的变量,可以写一个函数of_bind(你的对象类型),,在open事件中uo_1.of_bind(uo_2);uo_2.of_bind(uo_1),,在对象内部就可以直接访问相关对象的当前实例的变量了~~
pb8
2010-01-08
打赏
举报
回复
为什么要这样传递呢,存到实例变量又不是要显示
还有你的key_key事件的ID是什么?
楼主说下你的直接需求好些,貌似想复杂了~~
matlab
传递
函数求截止频率,
高分
求解RC滤波电路的
传递
函数和截止频率
公告: 为响应国家净网行动,部分内容已经删除,感谢读者理解。话题:
高分
求解RC滤波电路的
传递
函数和截止频率,请高手解答,
问题
详情:麻烦高手解答一下这个电路的
传递
函数和截止频率(这个电路回答:呵呵,明早你来看,现在有点忙,先占个位置,电容参数请给出来,图像看不清楚 呵呵,晚上点钟才想起还有这么一档事,赶紧来做题,电容参数要带单位哦,给出了计算表达式,最终结果自己数,可以检验一下,以防计算错误,过程是...
GB Studio中的
变量
作用域:局部
变量
与全局
变量
的使用场景
在GB Studio中,
变量
(Variable)是存储和管理游戏数据的核心工具。正确理解
变量
作用域(Scope)——尤其是局部
变量
(Local Variable)与全局
变量
(Global Variable)的区别——是设计复杂游戏逻辑的基础。本文将通过实例解析两种
变量
的技术特性、适用场景及工程实践,帮助开发者避免常见的作用域误用
问题
。 ##
变量
作用域的技术定义
变量
作用域指
变量
的可访问范围,...
Windows核心编程读书笔记之通过消息
传递
句柄
今天上午考网络,马马虎虎吧,及格应该没啥
问题
,
高分
可没想过。直到今天早上起床后才开始复习,共计复习了40分钟,只能跟着目录在大脑里把知识点回想一遍,稍微翻一下书。对于我一直裸考这件事情,有个roomate表示灰常羡慕…… 言归正传,上篇博客提到了用命令行
传递
句柄,而且说有时间了写一下用消息和环境
变量
传递
句柄,今天下午好好玩了一下午,刚才觉得该写一下了,然后突然反应过来——这基本上就是照抄...
【基于深度学习进行多
变量
纵向数据和生存数据的动态预测】
01 【研究背景】 阿尔茨海默病(AD)是一种进行性神经退行性疾病,在疾病的早期阶段准确预测AD的进展对于治疗至关重要。AD患者通常在疾病的整个过程中进行随访,从而重复测量多个纵向
变量
,将多个纵向
变量
纳入生存模型将会改善AD预测。 许多现有的预测方法只使用最后可用的观测,忽略了累积纵向信息,具有局限性;适用于纵向和生存数据的联合模型(JM)被用于评估各种纵向生物标志物预测AD的能力,当考虑多个纵向结果,JM涉及大量的随机效应,计算困难。 02 【当前进展和关键科学
问题
】 目前已经提出
计算机vb知识点,9月计算机二级VB知识点
让我们将备考时的忧虑,换为考前的记忆二级VB知识点、计划和思考吧!参数的
传递
1.形参与实参的概念形参:指出现在Sub 和Function过程形参表中的
变量
名、数组名,过程被调用前,没有分配内存,其作用是说明自
变量
的类型和形态以及在过程中的角色。形参可以是:1)除定长字符串
变量
之外的合法
变量
名;2)后面跟()括号的数组名。实参:是在调用Sub 和Function过程时,传送给相应过程的
变量
名、数组名...
脚本语言
743
社区成员
8,037
社区内容
发帖
与我相关
我的任务
脚本语言
PowerBuilder 脚本语言
复制链接
扫一扫
分享
社区描述
PowerBuilder 脚本语言
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章