#include "cocos-ext.h" //包含头文件

using namespace cocos2d::extension;//引用命名空间

/**
  *        创建CCControlSlider的两种方式

  *        用CCSprite精灵创建滑块控件

  *         create("滑块背景图", "划过区域图", "滑块图");

  *        static CCControlSlider* create(CCSprite* backgroundSprite, CCSprite* pogressSprite, CCSprite* thumbSprite);

  *        直接用图片资源名创建,省去了创建精灵的步骤

  *        实际上,在其内部依旧是调用上面的create函数创建CCSprite精灵

  *        create("滑块背景图", "划过区域图", "滑块图");

  *        static CCControlSlider* create(const char* bgFile, const char* progressFile, const char* thumbFile);

/**
 *        属性设置

 *        setValue , 

 *        setMinimumValue , setMaximumValue

 *        setMinimumAllowedValue , setMaximumAllowedValue ,

 *        setBackgroundSprite , setProgressSprite , setThumbSprite

 */
    float setValue() | getValue(); //设置当前滑块的值

    float setMinimumValue() | getMinimumValue(); //设置滑块最小值

    float setMaximumValue() | getMaximumValue(); //设置滑块最大值

    float setMinimumAllowedValue() | setMinimumAllowedValue(); //设置允许滑动的最小值

    float setMaximumAllowedValue() | setMaximumAllowedValue(); //设置允许滑动的最大值

    //设置滑块的背景图、划过区域图、滑块图

    //CC_SYNTHESIZE_RETAIN为宏定义:除了创建了set/get以外,还用了retain来保留内存资源。

    CC_SYNTHESIZE_RETAIN(CCSprite*, m_backgroundSprite, BackgroundSprite);

    CC_SYNTHESIZE_RETAIN(CCSprite*, m_progressSprite, ProgressSprite);

    CC_SYNTHESIZE_RETAIN(CCSprite*, m_thumbSprite, ThumbSprite);

    //创建 create("滑块背景图", "划过区域图", "滑块图"), 可传入精灵 和图片

    CCControlSlider *slider =CCControlSlider::create(CCSprite::createWithSpriteFrameName("ST_Volume.png"), 

    CCSprite::createWithSpriteFrameName("ST_Volume.png"), 

    CCSprite::createWithSpriteFrameName("ST_Round.png")); 

    slider->setMinimumValue(0.0f); //设置最低值

    slider->setMaximumValue(100.0f);//设置最高值

    slider->setMinimumAllowedValue();//设置最低可以滑动的值,0不需要设置

    slider->setMaximumAllowedValue();//设置最高可以滑动的值

    slider->setValue(50.0f); //设置当前值

    slider->setPosition(ccp(p_Window->getContentSize().width * 0.55f , p_Window->getContentSize().height * 0.66f));

    //设置回调函数

    slider->addTargetWithActionForControlEvents(this,cccontrol_selector(MyScene::sliderCallBack) , CCControlEventValueChanged);

    addChild(slider);
void MyScene::sliderCallBack(CCObject *sender, CCControlEvent controlEvent){
    //回调函数
    CCControlSlider* slider = (CCControlSlider*)sender;

    CCLog("%f",slider->getValue());

}

滑块控件CCControlSlider的更多相关文章

  1. cocos2dx基础篇(9) 滑块控件CCControlSlider

    [3.x] (1)去掉 “CC” (2)对象类 CCObject 改为 Ref (3)CCControlEvent 改为强枚举 Control::EventType (4)CCControlEvent ...

  2. cocos2d-x拖动滑块控件CCControlSlider

    #include "GameMusicSetting.h" bool GameMusicSetting::init() { if(!CCLayer::init()) { retur ...

  3. iOS 9应用开发教程之使用开关滑块控件以及滚动部署视图

    iOS 9应用开发教程之使用开关滑块控件以及滚动部署视图 使用ios9中的开关.滑块控件 开关和滑块也是用于和用户进行交互的控件.本节将主要讲解这两种控件. ios9开关 开关控件常用来控制某个功能的 ...

  4. WPF滑块控件(Slider)的自定义样式

    前言 每次开发滑块控件的样式都要花很久去读样式代码,感觉有点记不牢,所以特此备忘. 自定义滑块样式 首先创建项目,添加Slider控件. 然后获取Slider的Window样式,如下图操作. 然后弹出 ...

  5. WPF双滑块控件以及强制捕获鼠标事件焦点

    效果 概述 最近有个小需求要用双滑块表示一个取值范围,于是就简单做了个用户控件,在此记录下. 使用矩形Rectangle表示范围,椭圆Ellipse表示滑块,使用Canvas控制滑块的左右移动. 椭圆 ...

  6. iOS系列 基础篇 09 开关、滑块和分段控件

    iOS系列 基础篇 09 开关.滑块和分段控件 目录: 案例说明 开关控件Switch 滑块控件Slider 分段控件Segmented Control 1. 案例说明 开关控件(Switch).滑块 ...

  7. MFC_2.3 定时器、滑块、进度条控件

    定时器.滑块.进度条控件 1.拖控件 2.绑定变量.默认,然后取名字 3.初始化设置定时器 // 设置滑块和进度条的范围 m_TrackBar.SetRange(0, 1000); m_StaticP ...

  8. Cocos2d-X中的Slider控件

    Slider控件事实上就是滑块控件.经常使用于音乐中的音量控制,在Windows编程中开发音乐播放器就须要用到滑块控件控制音量 首先在project文件夹下的Resource文件夹中放 在Skider ...

  9. 2013 duilib入门简明教程 -- 复杂控件介绍 (13)

      首先将本节要介绍的控件全部拖到界面上,并调整好位置,如图:           然后将Name属性改成其他名字,          不能是[控件名+UI+数字]这种,因为这是DuiDesigner ...

随机推荐

  1. hdu 1667(IDA*)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1667 思路:大牛说是IDA*的入门题=.=构造h()=8-max(1,2,3);  max(1,2,3 ...

  2. Struts2_day01--导入源文件_Struts2的执行过程_查看源代码

    导入源文件 选中按ctrl + shift + t进入 Struts2执行过程 画图分析过程 过滤器在服务器启动时创建,servlet在第一次访问时创建 查看源代码 public class Stru ...

  3. Ubuntu执行su后输入密码结果认证失败--解决办法:sudo passwd修改命令

  4. 修改tomcat配置通过域名直接访问项目首页

    1.在自己项目的web.xml中配置欢迎页面 <welcome-file-list> <welcome-file>index.html</welcome-file> ...

  5. 第十六篇:Linux系统编程中环境变量的使用

    前言 在 UNIX Like 系统中,存有各类系统/应用程序的环境变量,可通过修改之改变系统/应用程序的执行效果:除此之外,用户还可以定义自己的环境变量,供自己写的程序使用. 本文将说明如何在程序中设 ...

  6. 华为 进入和退出Fastboot、eRecovery和Recovery升级模式

    手机关机状态下,可以进入Fastboot/eRecovery / Recovery/升级这几种模式: 需要连接电脑:Fastboot模式:长按音量下键+电源键.eRecovery 模式:长按音量上键+ ...

  7. 【NGUI】Unity3D UIGrid 排序、动态加载与销毁

    本帖最后由 Lucifer_H 于 2014-10-31 09:39 编辑 做 UIGrid 的动态加载是做游戏的装备列表时用到的,装备信息都是从后台发过来的,具体加载的代码如下: [C#] 纯文本查 ...

  8. c++11 类型推断

    自动类型推断 当编译器能够在一个变量的声明时候就推断出它的类型,那么你就能够用auto关键字来作为他们的类型: auto x = 1; 编译器当然知道x是integer类型的.所以你就不用int了.接 ...

  9. XStream别名;元素转属性;去除集合属性(剥皮);忽略不需要元素

    city package xstream; public class City { private String name; private String description; public St ...

  10. SaltStack远程执行-返回MySQL

    上一篇:SaltStack远程执行-模块 参考官方文档:https://docs.saltstack.com/en/latest/ref/returners/all/salt.returners.my ...