Cocos2d-x UI开发之CCControlSlider控件类使用实例

 更新时间:2014年09月11日 10:28:56   作者:皂荚花  
这篇文章主要介绍了Cocos2d-x UI开发之CCControlSlider控件类使用实例,本文代码中包含大量注释讲解了CCControlSlider控件类的使用,需要的朋友可以参考下

关于控件使用时的一些配置,请参见文章:UI开发之控件类-CCControlButton。这里只写出源代码,里边的注释对控件的用法有详细的介绍。

bool HelloWorld::init()
{
  bool bRet = false;
  do
  {
    CC_BREAK_IF(! CCLayer::init());

		//设置一个显示字符串的label
		CCLabelTTF * title = CCLabelTTF::create("slider value = 0.00","Arial",32);
		title->setPosition(ccp(240,200));
		//设置label的tag为1,方便以后获取
		this->addChild(title,0,1);

		//这三张图片分别是底部,进度条,控制按钮
		CCControlSlider * slider = CCControlSlider::create("sliderTrack.png","sliderProgress.png",
			"sliderThumb.png");

		//设置slider的最大值最小值
		slider->setMaximumValue(100);
		slider->setMinimumValue(0);
		//为slider添加事件监听函数
		slider->addTargetWithActionForControlEvents(this,cccontrol_selector(HelloWorld::valueChanged),
			CCControlEventValueChanged);
		//设置位置
		slider->setPosition(ccp(240,160));
		this->addChild(slider);

		//使用CCControlSlider实现血量条,只要将第三个控制按钮改为透明的就可以了,就会貌似血量条了
		CCControlSlider * slider2 = CCControlSlider::create("sliderTrack.png","progress.png","sliderThumb2.png");
		//通过以下函数使得认为的不能改变它的值
		slider2->setTouchEnabled(false);
		slider2->setMaximumValue(100);
		slider2->setMinimumValue(0);
		//可以添加事件处理函数,在事件处理函数中改变它的value
		slider2->setValue(100);
		slider2->setPosition(ccp(240,100));
		this->addChild(slider2);

    bRet = true;
  } while (0);

  return bRet;
}

//注意这个函数需要传入的俩个参数类型
void HelloWorld::valueChanged(CCObject * pSender,CCControlEvent controlEvent)
 {
	CCControlSlider * slider = (CCControlSlider *)pSender;
	CCLabelTTF * title = (CCLabelTTF *)this->getChildByTag(1);
	//使用CCLabelTTF的时候尽量不要重新改变它的内容,这里是为了简便起见
	title->setString(CCString::createWithFormat("slider value = %0.02f",slider->getValue())->getCString());
 }

相关文章

  • C语言实现生日贺卡

    C语言实现生日贺卡

    这篇文章主要为大家详细介绍了C语言实现生日贺卡的具体方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-04-04
  • Objective-C不带加减号的方法实例

    Objective-C不带加减号的方法实例

    显而易见的事实是,Objective-C 中,+ 表示类方法,- 表示实例方法,这篇文章主要给大家介绍了关于Objective-C不带加减号的相关资料,需要的朋友可以参考下
    2021-06-06
  • C++万能库头文件在vs中的安装步骤(图文)

    C++万能库头文件在vs中的安装步骤(图文)

    这篇文章主要介绍了C++万能库头文件在vs中的安装步骤(图文),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • 解析四方定理的应用

    解析四方定理的应用

    所有自然数至多只要用四个数的平方和就可以表示
    2013-05-05
  • C++实践IP地址类项目参考

    C++实践IP地址类项目参考

    今天小编就为大家分享一篇关于C++实践IP地址类项目参考,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • C语言 选择排序算法详解及实现代码

    C语言 选择排序算法详解及实现代码

    本文主要介绍C语言 选择排序算法,这里对排序算法做了详细说明,并附代码示例,有需要的小伙伴可以参考下
    2016-08-08
  • C语言 动态内存分配的详解及实例

    C语言 动态内存分配的详解及实例

    这篇文章主要介绍了C语言 动态内存分配的详解及实例的相关资料,需要的朋友可以参考下
    2016-09-09
  • C++中volatile和mutable关键字用法详解

    C++中volatile和mutable关键字用法详解

    这篇文章主要介绍了C++中volatile和mutable关键字用法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • 浅谈char*类型返回值和字符串常量

    浅谈char*类型返回值和字符串常量

    下面小编就为大家带来一篇浅谈char*类型返回值和字符串常量。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • 《C++ primer plus》读书笔记(一)

    《C++ primer plus》读书笔记(一)

    本读书笔记是C++ primer plus(第六版)前3章的学习笔记。非常的浅显易懂,复习C++基础知识的可以瞄瞄。
    2014-10-10

最新评论