复选框的实现(CheckBox和MenuItemImage)

1、使用checkBox实现

 // 创建一个CheckBox对象

auto checkBox = CheckBox::create("check_box_normal.png","check_box_normal_press.png",

"check_box_active.png","check_box_normal_disable.png","check_box_active_disable.png");

checkBox->setPosition(Vec2(visibleSize.width/2, visibleSize.height/2));

// 添加事件监听器

checkBox->addEventListener([=](Ref* pSender,CheckBox::EventType type){

        switch (type)

        {

            case CheckBox::EventType::SELECTED:

                _displayValueLabel->setString("Selected(选中)");

                break;

            case CheckBox::EventType::UNSELECTED:

                _displayValueLabel->setString("Unselected(未选中)");

                break;

            default:

                break;

        }

     });

     this->addChild(checkBox);

2、使用MenuItemImage实现

.h文件

void button3(Ref* pSender);

MenuItemImage* checkMenuItem;

.cpp文件

bool HelloWorld::init()

{

..........

save=MenuItemImage::create("box_off.png","box_on.png",CC_CallBack_1(HelloWorld::button3,this));

Menu * menu2 = Menu::create(save,NULL);

menu2->setPosition(ccp(visibleSize.width/2,visibleSize.height/3));

this->addChild(menu2);

..........

}

void HelloWorld::button3(Ref* pSender)

{    CCLog("save");

    static bool b = false;

    if(b == false)

    {

        save->selected();

        b = true;

    }

    else

{        

save->unselected();

    }

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值