首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 调用父窗口的事件或函数 [已结贴,结贴人:yvhygaa]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-30 12:59:29 楼主
    比如说,我现在有四个窗口  w_1,w_2,w_3,w_4

    w_2,w_3是w_1的子类

    w_1上面有事件ue_cx

    在w_1、w_2或者w_3上打开w_4,然后在w_4中如何调用父窗口(w_1,w_2,w_3等)事件ue_cx
    通用的写法。不是例如w_1.event ue_cx()
    请各位兄弟指点!
    50  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • AFIC
    • 等级:
    发表于:2008-06-30 13:04:541楼 得分:0
    ParentWindow().event ue_cx()
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • AFIC
    • 等级:
    发表于:2008-06-30 13:07:432楼 得分:0
    ParentWindow().event dynamic ue_cx()

    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-30 13:11:093楼 得分:20
    对于需要调用父窗口的情况,习惯上应该把窗口作为参数传过去
    可以在w_1,w_2,w_3的相关代码中,使用openwithparm,把窗口指针传过去
    在w_4的open中,把message.PowerObjectParm 保存到实例变量(类型为window即可)里面
    在需要的时候,可以调用iw.dynamic event ue_cx()  //iw为实例变量
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lllyyymmm
    • 等级:
    发表于:2008-06-30 13:13:374楼 得分:0
    如果你是用继承的话,那就更简单了,直接调用就行
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-30 13:15:155楼 得分:0
    引用 2 楼 AFIC 的回复:
    ParentWindow().event dynamic ue_cx()

    ParentWindow()适应于子窗口的情况,
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • AFIC
    • 等级:
    发表于:2008-06-30 13:23:026楼 得分:0
    引用 5 楼 rightyeah 的回复:
    引用 2 楼 AFIC 的回复:
    ParentWindow().event dynamic ue_cx()

    ParentWindow()适应于子窗口的情况,


    他难道不是这个意思吗?
    如果是open一个response,
    可以参考pfc,从全局service里抓。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-30 14:24:187楼 得分:0
    我看lz的意思,显然是几个main!类型的窗口之间,互相打开
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • AFIC
    • 等级:
    发表于:2008-06-30 14:39:148楼 得分:0
    你是福尔摩斯么……
    说说你的推理过程吧。
    我推断是MDI是因为他用了“父窗口”和“XX打开”
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jlwei888
    • 等级:
    发表于:2008-06-30 14:42:429楼 得分:0
    呵呵!回答个问题还得猜!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • eviler
    • 等级:
    发表于:2008-06-30 16:39:4410楼 得分:30
    ParentWindow().event dynamic ue_cx()  使用response 的时候也不是成的,提示没定义的变量

    我来收分吧:

    这样 : 父类既然是 w_1 ,你就可以这样定义
    w_1 w_anstor
    w_anstor = message.powerobjectparm
    w_anstor.event ue_cx()
    传参数的时候把窗口传过来
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • AFIC
    • 等级:
    发表于:2008-06-30 17:00:4811楼 得分:0
    eviler你说的和众妙之门说的有啥区别……
    PS.response9是不行的,但是6.5你那样写是没有问题的,呵呵。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • eviler
    • 等级:
    发表于:2008-06-30 17:19:2212楼 得分:0
    我晕 ,一样
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-07-01 10:01:3913楼 得分:0
    hoho
    就这么两种办法,有啥好讨论的,lz随便选一个就行了。
    AFIC 的办法比较好用,就是要求必须是父子窗口才能用;我和eviler 的办法嘛,到处都能用,只不过用起来麻烦点,要自己追踪调用者窗口而已
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-07-04 11:33:1214楼 得分:0
    差不多,看各人习惯
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved