1.控件:即控制对象,控制按钮之类的精灵

2.主要介绍四大类控件:

CCControlSlider:进度条

CCControlSwitch:开关

CCScale9Sprite:9妹图(用于缩放)

CCControlButton:控制按钮,最复杂,最灵活

3.使用方法:

a.创建一个进度条:

CCControlSlider *slider = CCControlSlider::create("slider/sliderTrack.png", "slider/sliderProgress.png", "slider/sliderThumb.png");

第一个参数:背景图片,第二个参数:前景图片,第三个参数:是拇指按钮,其实内部实现原理是,分别创建三个精灵,然后相互作用形成进度条的视觉效果

b.创建一个开关:

CCControlSwitch *sw = CCControlSwitch::create(CCSprite::create("UI/switch-mask.png"), CCSprite::create("UI/switch-on.png"), CCSprite::create("UI/switch-off.png"), CCSprite::create("UI/switch-thumb.png"),CCLabelTTF::create("ON", "courier New", 20), CCLabelTTF::create("OFF", "courier New", 20));

和进度条控件一样,也是先分别创建三个精灵,后两个参数是创建两个标签,用于显示提示的文本

c.创建一个9妹图:用于缩放时,解决边框的毛刺问题

实现原理:用于处理图片放大时边框的毛刺和失真问题,它的原理是,将图片切割成9块,四个边角不放大,其余块缩放,从而可以有效的改善毛刺问题

创建一个9妹图:

CCScale9Sprite *s9spr = CCScale9Sprite::create("UI/scale9.png", CCRectMake(0, 0, 116, 102),CCRectMake(10,7,96,88));//后两个参数是设置图片大小和要缩放的矩形区域的大小,还不如不设置,使用默认的参数

d.创建一个控件按钮:CCControlButton,响应事件够多,够复杂,其实是多个其他控件的组合

CCScale9Sprite *bgButton = CCScale9Sprite::create("UI/button.png");//创建背景的按钮
 CCScale9Sprite *bgButtonLighted = CCScale9Sprite::create("UI/buttonHighlighted.png");//创建选中的按钮
 CCLabelTTF * text = CCLabelTTF::create("Touch Me", "Couier New", 50);
 CCControlButton *button = CCControlButton::create(text,bgButton);

4.给控件添加响应事件: addTargetWithActinForControlEvents()

button->addTargetWithActionForControlEvents(this, cccontrol_selector(T12UI::touchDownCallBack),CCControlEventTouchDown);

Cocos2dx中的四种控件及主要用法的更多相关文章

  1. WEB页面中常见的四种控件的必须的测试

    以下为常规的需求,除非需求有明确说明,如密码输入框中可以输入空格.   输入框 1. 为空,但页面中明确说明不能为空(带有星号或者只有这一个输入框),有以下两种情况: a. 不进行输入或者使其为空:焦 ...

  2. ASP.Net 中的三种控件

    ---恢复内容开始--- 第一种:HTML控件 ASP.Net把HTML控件当成普通字符串渲染到浏览器端,不去检查正确性.无法在服务器端进行处理. 比如: <input111 type=&quo ...

  3. HTML中禁用表单控件的两种方法readonly与disabled

    时候我们会希望表单上的控件是不可修改的,比如在修改密码的网页中,显示用户名的文本框就应该是不可修改状态的,下面与大家分享下禁用表中控件的两种方法 在网页的制作过程中,我们会经常使用到表单.但是有时候我 ...

  4. 在Winform开发框架中,利用DevExpress控件实现数据的快速录入和选择

    在实际的项目开发过程中,有好的控件或者功能模块,我都是想办法尽可能集成到我的WInform开发框架中,这样后面开发项目起来,就可以节省很多研究时间,并能重复使用,非常高效方便.在我很早之前的一篇博客& ...

  5. Excel中的表单控件和active控件

    EXCEL中有两种控件:表单控件和active控件 表单控件是excel5和excel95开始使用的,从excel97开始,active控件开始出现 关于表单控件和active控件的区别和使用范围,网 ...

  6. [转] c#中 多线程访问winform控件

    原文 c#中多线程访问winform控件的若干问题小结 我们在做winform应用的时候,大部分情况下都会碰到使用多线程控制界面上控件信息的问题.然而我们并不能用传统方法来解决这个问题,下面我将详细的 ...

  7. C/S模式开发中如何利用WebBrowser控件制作导航窗体

    原文:C/S模式开发中如何利用WebBrowser控件制作导航窗体 转自: CSDN 相信不少同学们都做过MIS系统的开发,今天这里不讨论B/S模式开发的问题.来谈谈winform开发.用过市面上常见 ...

  8. @Html.CheckBoxFor为何输出两种控件

    在MVC中当使用@Html.CheckBoxFor时表单上会产生两种控件checkbox和hidden,比如: @Html.CheckBoxFor(model => model.IsTop) 对 ...

  9. Web自动化框架LazyUI使用手册(6)--8种控件对应的class,及可对其进行的操作

    概述: 本文详述8种控件对应的class,及可对其进行的操作 回顾: 回顾一下,下文中的工具设计思路部分: http://blog.csdn.net/kaka1121/article/details/ ...

随机推荐

  1. 基于Socket的UDP发包程序

    UDP(User Datagram Protocol,用户数据报协议)是在互联网中常用的传输层协议,该协议提供了向另一用户程序发送的消息的最简便的协议机制.与TCP一样,其默认的下层协议是IP.UDP ...

  2. 洛谷P1717 钓鱼

    P1717 钓鱼 41通过 116提交 题目提供者该用户不存在 标签贪心 难度提高+/省选- 提交该题 讨论 题解 记录 最新讨论 暂时没有讨论 题目描述 话说发源于小朋友精心设计的游戏被电脑组的童鞋 ...

  3. return,exit,die

    return:代表退出某个函数,但是函数体外的语句仍然需要执行. exit:退出程序,但是不从内存中卸载,exit其实也是可以输出语句的,加一个括号即可. die:退出程序,并且从内存中卸载.

  4. Android之所有API汇总

    这里就是所有的Android API,包含所有的API类:http://www.android-doc.com/reference/packages.html

  5. Warning: Permanently added '...' (RSA) to the list of known hosts --Windows下git bash 警告处理

    原链接地址 StackOverflow 处理方法: 创建文件~/.ssh/config, 此处对应windows当前用户目录下的.ssh文件夹 增加如下语句 UserKnownHostsFile ~/ ...

  6. php中sprintf与printf函数用法区别

    下面是一个示例:四舍五入保留小数点后两位  代码如下 复制代码 <?php$num1 = 21;echo sprintf("%0.2f",$num1)."<b ...

  7. Js判断CSS文件加载完毕的实例教程

    要判断这个 CSS 文件是否加载完毕,各个浏览器的做法差异比较大,这次要说IE浏览器做的不错,我们可以直接通过onload方法来处理CSS加载完成以后的处理: 代码如下 复制代码 // 代码节选至se ...

  8. Codevs 1039 :数的划分

    总时间限制: 1000ms 内存限制:  65536kB 描述 将整数n分成k份,且每份不能为空,任意两份不能相同(不考虑顺序). 例如:n=7,k=3,下面三种分法被认为是相同的. 1,1,5: 1 ...

  9. WCF 服务与终结点(四)

    服务 服务是一组公开功能的集合. 服务内部包含了如语言.技术.版本与框架等概念,服务之间的交互只允许使用规定的通信模式 外界客户端并不知道服务内部的实现细节,所以WCF服务通常通过元数据的方式描述可用 ...

  10. IDEA操作GIT说明

    公司的代码库从TFS升级到了GIT,我们的自动化测试代码就需要迁移到git上.操作如下: 1.安装GIT 安装完成后,在IDEA中配置git安装路径   2.在本地磁盘新建一个空目录,例如:D:\Wo ...