Cocos2dx中的四种控件及主要用法

时间:2023-01-08 13:11:24

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. &lbrack;转&rsqb; c&num;中 多线程访问winform控件

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

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

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

  8. &commat;Html&period;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. Android listview和gridview以及view的区别

    GridView 可以指定显示的条目的列数. listview一般显示的条目的列数都是一列 如果是列表(单列多行形式)的使用ListView,如果是多行多列网状形式的优先使用GridView andr ...

  2. 浅谈CommandBehavior枚举的独特之处

    提供对查询结果和查询对数据库的影响 此枚举有一个 FlagsAttribute 属性,通过该属性可使其成员值按位组合. 命名空间:  System.Data程序集:  System.Data(在 Sy ...

  3. es6学习笔记1 --let以及const

    let语句的基本用法:  1.let声明的变量为块级作用域,只在最近的{}里面有效,如果在外部引用就会报错. { let a = 10; var b = "hello" } ale ...

  4. Scatterplots 散点图

    Simple Scatterplot # Simple Scatterplot attach(mtcars)plot(wt, mpg, main="Scatterplot Example&q ...

  5. 如何手动把jar包添加进Maven本地仓库

    有以下两种情况你需要手动通过Maven命令把jar文件添加进本地仓库: 1.在中心仓库里没有你想要的jar包. 2.你自己写了一个jar包,在其他项目要用到. 补充:现在仍有很多jar包不支持Mave ...

  6. Android OpenGL ES(八)绘制点Point &period;&period;

    上一篇介绍了OpenGL ES能够绘制的几种基本几何图形:点,线,三角形.将分别介绍这几种基本几何图形的例子.为方便起见,暂时在同一平面上绘制这些几何图形,在后面介绍完OpenGL ES的坐标系统和坐 ...

  7. mysql新建表设置为utf8

    CREATE DATABASE IF NOT EXISTS yourdbname DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

  8. Channels实现扫码登录

    参考了下别人说的原理,根据自己的逻辑实现,没有完全按照别人的原理来,所以不一定适用于大家,仅供参考吧!!! 流程如下: 1. web发起websocket链接,后端接受链接后立马发送第一次消息,为全局 ...

  9. &lbrack;UE4&rsqb;保存游戏数据

    新建一个继承自“SaveGame”的蓝图.

  10. Java图形化界面设计——布局管理器之GridBagLayout

    GridBagLayout 不会随着窗口的变化标签随之发生变化,可固定. ---------------------------------------------------------- impo ...