setEnabled和setVisible

来源:互联网 发布:mac优酷怎么缓存 编辑:程序博客网 时间:2024/05/22 15:20
void Widget::visit() 

    if (_enabled) 
    { 
        Node::visit(); 
    }     

 
原来_enabled为false之后不visit了,所以就不显示了。怒改之,去掉if判断。void Layout::visit()里也有这个问题,一并删掉! 
setEnabled(false)之后控件正常显示,只是不能点击。哦了~顿时心情舒畅。               

他以为控件隐藏之后控件就不响应touch事件了,但他错了哦。其实本屌之前也遇到过这个问题,不过本屌一眼就看穿了这个开发者的小阴谋, 
所以本屌一直是setVisible(false)和setEnabled(false)一起用的,不用改源码,也不用像版主说的那样将控件移到屏幕外,绿色环保低碳高效,有木有~有木有~?。哈哈哈哈,想这样就把本屌坑了,智商拙计! 
———————————华丽分割线————————————————— 
啰嗦了这么多废话,总结一下: 

setEnabled(false):会让widget不可使用,并且隐藏。  

setVisible(false): 会让widget隐藏,但依然可用! 因此在Cocostudio上设置为不可见,其实是setVisible,这样会导致按钮依然会接收到响应.
0 0
原创粉丝点击