IsVisible引发的血案
时间:2010-08-09 来源:sinodragon21
作者:金鸽
欢迎访问 sinodragon21.cublog.cn
┌─────────────────────────┐
│┌─┐ ┌───────┐ ┌─┐|
││+│ | 显示 / 隐藏 │ │-||----Container
│└─┘ └───────┘ └─┘|
└─────────────────────────┘
当 “显示/隐藏Button”被SetVisible(False)时,“+”和“-”号都接收不到 点击自己的事件event,调查原因,是因为点击“+”“-”号的事件都被“显示/隐藏Button”截获并丢弃了。
由于Container中包含3个元素,分别是:
Ø “+”号
Ø “-”号
Ø “显示/隐藏Button”
Container的事件响应函数体中,实现方式只能是顺序依次调用各个子控件的事件响应函数,
注意点:调用某个控件的事件响应函数之前,要且必须要 经过2次判断:
1. NULL != pCompoment
2. pComponent->IsVisible()
Bool Container::EventProcessor()
if(NULL != pPlusButton)
if(NULL != pMinusButton)
... ... |
正确的控件使用方法:
Bool Container::EventProcessor() |