zoukankan      html  css  js  c++  java
  • cegui 学习 事件处理

    有关event的有

    添加事件 add

    删除事件remove

    激发事件 fire  ----比如窗体 的onresize(){fire(此窗体的xx事件发生)} 就是当这个窗体 onresize的时候 触发 xx事件 可以被其他窗体捕获----------告诉别人我这里发生了什么

    添加事件处理函数 sub   A窗体-》sub(某个事件 ,func) A窗体发生某事件了 ,执行b窗体的func-----------------对另外一个窗体的事件做处理

    查找事件 get

    红色好像不对

    (1)添加一个事件(2)删除一个事件(3)激发一个事件,其实就是调用事件相应的处理函数(4)添加事件处理函数(5)查找事件。这五种功能对应的函数分别为:

    (1).addEvent

    (2).removeEvent,removeAllEvents

    (3).fireEvent,fireEvent_impl(内部实现函数)

    (4).subscribeEvent(2个重载函数),subscribeScriptedEvent(2个重载函数)

    (5).getEventObject,isEventPresent

    下面代码的意思就是 右键触发EventRBClicked事件的处理函数

    例子  :

    //c++

    const String FalagardActionButton::EventRBClicked((utf8*)"RBClicked");

    void FalagardActionButton::onRBClicked(WindowEventArgs& e)
    {
    if(d_dragging) return;

    fireEvent(EventRBClicked, e, EventNamespace);
    }

    //lua
    <Window Type="WoWLook/ActionButton" Name="PacketButton_SP3" >
    <Event Name="RBClicked" Function="Packet_Ext_ItemBtnClicked(3);" />

  • 相关阅读:
    生成函数学习笔记
    CF1437F Emotional Fishermen
    BZOJ 1443 [JSOI2009]游戏Game
    BZOJ 1018 [SHOI2008]堵塞的交通traffic
    访问量破1000之记录
    BZOJ 1022 [SHOI2008]小约翰的游戏John
    BZOJ1457 棋盘游戏
    BZOJ1874: [BeiJing2009 WinterCamp]取石子游戏
    BZOJ 1188 [HNOI2007]分裂游戏
    Codeforces Round #345 (Div. 2)
  • 原文地址:https://www.cnblogs.com/minggoddess/p/1935923.html
Copyright © 2011-2022 走看看