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. 如何为不定高度(height:auto)的元素添加CSS3 transition-property:height 动画

    但一个元素不设置height时,它的默认值是 auto,浏览器会计算出实际的高度. 但如果想给一个 height:auto 的块级元素的高度添加 CSS3 动画时,该怎么办呢? 从 MDN 的可以查到 ...

  2. C#用反射判断一个类型是否是Nullable同时获取它的根类型(转自网络)

    在我们的应用程序中我们使用类描述我们的业务对象,为我们产生一些报表之类的,那就依赖大量不同的对象,我们创建一个帮助方法来转换我们的业务对象,或是一个List的业务对象到DataTables. 由于数据 ...

  3. Part 6 AngularJS ng repeat directive

    ng-repeat is similar to foreach loop in C#. Let us understand this with an example. Here is what we ...

  4. DWZ (JUI) 教程 根据ID刷新 dialog

    reloadDialog:function(dialogId){ var dialog = $("body").data(dialogId); if(dialog){ $.pdia ...

  5. python使用正则表达式文本替换

    2D客户端编程从某种意义上来讲就是素材组织,所以,图片素材组织经常需要批量处理,python一定是最佳选择,不管是win/linux/mac都有一个简单的运行环境 举两个应用场景: 如果不是在某个文件 ...

  6. tcpServer 浅显的发一代码

    接下来发出来的一段代码也是我从网上找的一个例子,具体的来源已经找不到了,跟作者说声抱歉 ,现在公司做机票,出于性能的原因,就重写一个底层的tcp请求(不是我写的) 下面测试的是个控制台应用程序 Htt ...

  7. javascript之面向对象程序设计(对象和继承)

    总结的文章略长,慎点. 知识点预热 引用类型:引用类型的值(对象)是引用类型的一个实例.在ECMAScript中,引用类型是一种数据结构,用于将数据和功能组织在一起.在其他面向对象语言中被称为类,虽然 ...

  8. 对match() 和 exec() 返回值和属性的测试

    语法: exec() : RegExpObject.exec(string) match() : stringObject.match(string) stringObject.match(regex ...

  9. 利用Nutch和Tomcat构建搜索引擎

    利用Nutch和Tomcat构建搜索引擎 1.安装环境及软件版本介绍 本教程是在Linux Ubuntu 12.04 desktop i386操作系统上搭建,结合使用了Nutch-1.2和Apache ...

  10. 经典SQL语句大全 学者必看

    一.基础 .说明:创建数据库 CREATE DATABASE database-name .说明:删除数据库 drop database dbname .说明:备份sql server --- 创建 ...