正文
Cocos2d-X中的Slider控件
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
Slider控件事实上就是滑块控件。经常使用于音乐中的音量控制,在Windows编程中开发音乐播放器就须要用到滑块控件控制音量
首先在project文件夹下的Resource文件夹中放
在Skider.h加入以下的代码
#ifndef __Slider_H__
#define __Slider_H__#include "cocos2d.h"
#include "cocos-ext.h"
USING_NS_CC;
USING_NS_CC_EXT;class Slider : public CCLayer
{
public:
static CCScene* scene();
CREATE_FUNC(Slider);
bool init();void ValueChanged(CCObject*, CCControlEvent);
};#endif
在Skider.cpp加入以下的代码
#include "Slider.h"CCScene* Slider::scene()
{
CCScene* s = CCScene::create();
Slider* layer = Slider::create();
s->addChild(layer);
return s;
}bool Slider::init()
{
//初始化父类
CCLayer::init(); //得到窗体的尺寸
CCSize winSize = CCDirector::sharedDirector()->getWinSize(); //创建一个滑块
CCControlSlider* slider = CCControlSlider::create("sliderTrack.png", "sliderProgress.png", "sliderThumb.png"); //加入滑块
addChild(slider); //设置滑块的位置
slider->setPosition(ccp(winSize.width / 2, winSize.height / 2)); //设置滑块滑动范围的最小值
slider->setMinimumValue(0); //设置滑块的最大值
slider->setMaximumValue(100); //设置滑块滑动时的最大值,此功能经常使用于视频站点中的免费试看的电影
slider->setMaximumAllowedValue(90); //设置滑块滑动的最小值,此功能经常使用于视频站点中的免费试看的电影
slider->setMinimumAllowedValue(10); //滑块响应函数(当滑块滑动时调用ValueChanged函数)
slider->addTargetWithActionForControlEvents(this,
cccontrol_selector(Slider::ValueChanged),
CCControlEventValueChanged);return true;
}void Slider::ValueChanged(CCObject* sender, CCControlEvent ev)
{
//当滑块滑动时
if (ev == CCControlEventValueChanged)
{
CCControlSlider* slider = (CCControlSlider*)sender; //得到滑块的值
float f = slider->getValue(); //打印滑块的值
CCLog("current value is %f", f);
}
}
运行结果:
測试执行效果: