#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. SVN入门2

    TortoiseSVN 以简单易用的安装包的形式发布.双击安装文件并按照提示操作.安装文件会照顾其余的事情.安装结束后不要忘记重启电脑. Import(导入) 导入.导出是以服务器上的版本库为中心的. ...

  2. [转]ASP.NET MVC 5 学习教程:快速入门

    本教程将使用Visual Studio 2013手把手教你构建一个入门的ASP.NET MVC5 Web应用程序.本教程配套的C#源码工程可通过如下网址下载:C#版本源码链接.同时,请查阅 Build ...

  3. 使用javascript来访问本地文件夹

    常用的.net 的aspx文件由于运行在服务器端,并不具有访问用户本地文件夹的权限,导致类似于<a href="file:///d:/backup" > open fo ...

  4. Excel宏被禁用解决办法

  5. JZOJ.5305【NOIP2017模拟8.18】C

    Description

  6. 关于PostgreSQL的SQL注入必知必会

    一.postgresql简介 postgresql是一款关系型数据库,广泛应用在web编程当中,由于其语法与MySQL不尽相同,所以其SQL注入又自成一派. 二.postgresql的SQL注入:(注 ...

  7. ondrag事件

    ondragstart 事件在用户开始拖动元素或选择的文本时触发. 拖放是 HTML5 中非常常见的功能. 更多信息可以查看我们 HTML 教程中的 HTML5 拖放. 注意: 为了让元素可拖动,需要 ...

  8. Linux系统CPU核数等信息查看

    版权声明:本文为原创文章,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明. https://blog.csdn.net/fgf00/article/details/52584 ...

  9. 剑指Offer——把二叉树打印成多行

    题目描述: 从上到下按层打印二叉树,同一层结点从左至右输出.每一层输出一行. 分析: 二叉树的层次遍历,利用队列. 代码: /* struct TreeNode { int val; struct T ...

  10. 三.插入和查找MySQL记录 数据类型

    1.插入数据的两种方式 1)INSERT tb1 VALUES('TOM',25,1863.25); 2)INSERT tb1(username,salary) VALUES('John',4500. ...