SOUI官方论坛

 找回密码
 立即注册
查看: 4126|回复: 36

SEdit编辑框内容改变事件演示 EVT_RE_NOTIFY

  [复制链接]
  • TA的每日心情
    开心
    前天 18:36
  • 签到天数: 940 天

    [LV.10]以坛为家III

    580

    主题

    1340

    帖子

    2万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    28735
    发表于 2019-11-26 10:59:47 | 显示全部楼层 |阅读模式
    2019-11-26_101142.png

    当内容改变时,会弹出相应的内容。
    游客,如果您要查看本帖隐藏内容请回复

    SEdit要想响应内容改变,需要添加以下属性
    notifyChange="1"



  • TA的每日心情
    开心
    前天 18:36
  • 签到天数: 940 天

    [LV.10]以坛为家III

    580

    主题

    1340

    帖子

    2万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    28735
     楼主| 发表于 2019-11-26 11:01:47 | 显示全部楼层
    QQ图片20191126105820.png
    需要注意这里只支持bool型,
    template <class T, class A>
    MemberFunctionSlot<T,A> Subscriber(bool (T::* pFn)(A *), T* pObject)
    {
        return MemberFunctionSlot<T,A>(pFn, pObject);
    }
    inline FreeFunctionSlot<> Subscriber(bool (*pFn)(EventArgs *))
    {
        return FreeFunctionSlot<>(pFn);
    }


    所以不要纠结这里为什么不能用void类型了
  • TA的每日心情

    2021-11-14 00:17
  • 签到天数: 81 天

    [LV.6]常住居民II

    3

    主题

    61

    帖子

    271

    积分

    02:00元婴期

    Rank: 3Rank: 3

    积分
    271
    发表于 2019-12-12 19:28:30 | 显示全部楼层
    感谢楼楼分享

    该用户从未签到

    4

    主题

    26

    帖子

    109

    积分

    24:00金丹期

    Rank: 2

    积分
    109
    发表于 2019-12-12 20:32:42 | 显示全部楼层
    谢谢分享
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    1

    帖子

    40

    积分

    22:00筑基期

    Rank: 1

    积分
    40
    发表于 2019-12-16 16:10:26 | 显示全部楼层
    感谢分享!
    回复

    使用道具 举报

  • TA的每日心情
    开心
    前天 18:36
  • 签到天数: 940 天

    [LV.10]以坛为家III

    580

    主题

    1340

    帖子

    2万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    28735
     楼主| 发表于 2020-1-19 22:06:46 | 显示全部楼层
    【SOUI贵宾】小新 17:25:51
    @启程软件 老大, Edit控件怎么响应文本改变的事件

    【分神】行者 17:26:01


    【SOUI作者】启程软件 17:26:12
    小新  
    @启程软件 老大, Edit控件怎么响应文本改变的事件
    你也不知道?

    【SOUI作者】启程软件 17:26:14
    论坛上有。

    【SOUI贵宾】小新 17:26:19


    【SOUI贵宾】小新 17:26:37
    我去翻翻

    【渡劫】使用-路人 17:27:15
    notifyChange="1"

    【渡劫】使用-路人 17:27:43
            EVENT_ID_HANDLER(R.id.edt_pay, EVT_RE_NOTIFY, OnEditChange);

    【渡劫】使用-路人 17:27:58
            void OnEditChange(SOUI::EventArgs *pEvt);                // 输入有变

  • TA的每日心情
    开心
    前天 18:36
  • 签到天数: 940 天

    [LV.10]以坛为家III

    580

    主题

    1340

    帖子

    2万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    28735
     楼主| 发表于 2020-1-20 10:01:38 | 显示全部楼层
    SEditDemo.rar (30 KB, 下载次数: 5, 售价: 1 SOUI币)
    此demo演示了内容改变事件发生时获取edit内容并赋值给sstaitc的功能


    【老杨家的小扬】小钢炮 9:05:21
    edit的chang在失去焦点时会崩溃

    【管理员】小白 9:09:50

    我这个了是edit内容改变的,SASSERT(pFlat_Loc);正常,下面获取内容的出错,我做个demo看能重现不

    【SOUI贵宾】小新 9:15:56
    不是这这样判断一下吗
    EventRENotify* evt = (EventRENotify*)pEvt;
            if (evt && evt->iNotify == EN_CHANGE)

    【SOUI作者】启程软件 9:16:25
    要加一个属性

    【老杨家的小扬】小钢炮 9:16:27
    判断也是有问题   这个问题很玄学  

    【老杨家的小扬】小钢炮 9:16:44
    我当初查的时间调试时一定没问题  

    【老杨家的小扬】小钢炮 9:16:52
    release就会偶尔出问题

    【SOUI作者】启程软件 9:17:27
    不会吧?

    【老杨家的小扬】小钢炮 9:17:57
    我记得当初的需求是   判断edit是否输入了@    然后就会有这个问题  

    【SOUI作者】启程软件 9:18:26
    我没有碰到过

    【老杨家的小扬】小钢炮 9:18:34
    也是通过监控EditChanged这个事件去处理的  

    【管理员】小白 9:26:21
    论坛每日签到了啊http://www.soui.vip/dsu_paulsign-sign.html

    【渡劫】使用-路人 9:26:46
    小新  
    不是这这样判断一下吗
    EventRENotify* evt = (EventRENotify*)pEvt;
            if (evt && evt->iNotify == EN_CHANGE)


    @小新

    【渡劫】使用-路人 9:26:57
    注意一下这个初始化标记变量


    【SOUI贵宾】小新 9:33:45
    @使用-路人 哦, 感谢

    【管理员】小白 9:33:47
    使用-路人  
    QQ图片20200120095945.png
    注意一下这个初始化标记变量
    @使用-路人  你这个方法可行

    【管理员】小白 9:33:48


    【管理员】小白 9:33:57
    这么改我的程序了不崩溃了

    【渡劫】使用-路人 9:35:00
    还没初始化好的时候,有可能取不到控件,但也触发change事件了

    【渡劫】使用-路人 9:35:18
    还有combox的change也得注意这个


  • TA的每日心情
    开心
    前天 18:36
  • 签到天数: 940 天

    [LV.10]以坛为家III

    580

    主题

    1340

    帖子

    2万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    28735
     楼主| 发表于 2020-1-20 10:15:35 | 显示全部楼层
    录制_2020_01_20_10_12_37_679.gif

    效果出来了,背景图不动,红点也是一个img,通过计算位置,再SetAttribute(L"pos",pos);实现这个动态效果,通过监控SEdit的内容改变来实现

    该用户从未签到

    2

    主题

    5

    帖子

    78

    积分

    24:00金丹期

    Rank: 2

    积分
    78
    发表于 2020-1-20 10:22:02 | 显示全部楼层
    很赞
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2023-12-28 08:35
  • 签到天数: 84 天

    [LV.6]常住居民II

    0

    主题

    35

    帖子

    803

    积分

    04:00化神期

    Rank: 4

    积分
    803
    发表于 2020-3-5 14:55:20 | 显示全部楼层
    学习学习
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|手机版|小黑屋|SOUI官方论坛

    GMT+8, 2024-4-24 19:40

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表