cocos2dx setVisible 与setEnabled 小实例

初学cocos2dx时总弄不明白setVisible和setEnabled到底哪不一样,于是做一个下方的小例子:


首先在一个新场景中创建一个menu

 CCMenuItemImage *pCloseItem = CCMenuItemImage::create("back.png","back.png",this,menu_selector(GameMain::menuBackCallback) );	//此回调处打log“111111”
    pCloseItem->setPosition( ccp(size.width/2,size.height/2 - 50) );
    pCloseItem->setScale(0.5);
    CCMenu* pMenu = CCMenu::create(pCloseItem, NULL);
  pMenu->setVisible(false);
  pMenu->setEnabled(false);


1.pMenu->setVisible(false);    pMenu->setEnabled(false);

结果


cocos2dx setVisible 与setEnabled 小实例_第1张图片

没有显示,点击屏幕没有Log出现

2.pMenu->setVisible(true);    pMenu->setEnabled(false);

cocos2dx setVisible 与setEnabled 小实例_第2张图片

有按钮显示,没有log出现


3.pMenu->setVisible(false);    pMenu->setEnabled(true);

cocos2dx setVisible 与setEnabled 小实例_第3张图片

没有显示,点击屏幕没有Log出现


4.pMenu->setVisible(true);    pMenu->setEnabled(true);

cocos2dx setVisible 与setEnabled 小实例_第4张图片

有显示,点击屏幕有Log出现

cocos2dx setVisible 与setEnabled 小实例_第5张图片

总结:setVisible  控制按钮是否显示

   setEnabled 控制按钮是否可用

开发时最好setVisible  与setEnabled 成对使用

你可能感兴趣的:(游戏开发,cocos2dx)