接下来我们再来看Progress Bar和Slider,对比参数我们可以发现,Progress Bar和slider的明显区别在于slider多一个Thumb选项,这里的Thumb就是我们拖动的时候点击的按钮。

Empty 和Full选项其实就是前景和背景的Sprite。这里大家都已经熟悉了,我们看Slider和ProgressBar的根节点,也可以发现,Slider之比ProgeressBar 多一个BoxCollider,参数对比如图

Value :当前值

Steps:可以理解为将最大值等分的份数

Foreground: 前景Sprite,

Thumb:只有UIslider有,ProgressBar没有

Direction:方向,选择是垂直还是水平。

EventRecv:接收事件的物体

Function:事件响应的名称

我们再看Slider的Thumb物体,可以发现它和Button有点类似,其实就是Spirit和Button结合,里面的代码我们也都很熟悉了。

CheckBox,打开WidgetWizard(菜单NGUIàOpen the Widget Wizard)打开Widget Tool窗口,在Template中选择Checkbox,我们看到checkbox只有background(背景)和checkmark(复选标 识),创建一个checkbox,我们可以发现,checkbox包含三个子物体,background,checkmark和一个label三个物体都 是我们熟悉的Sprite和Label。

在根节点Checkbox物体上附加的代码很多我们也都熟悉,只有一个新的UICheckbox,

CheckSprite就是CheckMark

CheckAnimation默认为空

Instant Tween,从代码中看,此选项的作用可以让Checkmark渐变消失或出现。

StartChecked,初始状态是否选择

Radio Button Root,在多个选项只能选一个的情况下,我们可以做多个CheckBox,把它们都作为一个物体的子物体,然后把这个物体作为每个按钮的Radio Button Root,这样可以实现只能单选一个按钮的情况,就是互斥选项。

Option Can Be None,选项可空,如果勾选,则代表可以不选择。

Event Reciver:事件响应接收物体

Function Name 事件名称。

示例:

在这里我们做一个小的示例说明互斥选项,选择菜单NGUI->Create a Panel,创建一个新的Panel2,然后我们在这个Panel下创建几个checkbox,设置Checkbox的RadioButton Root为Panel2,运行,点击其中的任何一个checkbox查看效果。

PopupList(弹出式列表框)、PopupMenu(弹出式菜单):打开Widget Wizard(菜单NGUIàOpenthe Widget Wizard)打开Widget Tool窗口,在Template中选择PopUp List,我们看到它有前景、背景、高亮等选项可选,选择好之后点击Add To ,创建一个Popup List,,这里属性很多我们都熟悉了,只有一个UIPopup List陌生,它的属性窗口如图

其中Text Label、Background、Highlight对应我们刚才选择的三个。Options列表框列出所有选项,如果我们想添加选项,在这里直接添加 即可。Selection表示当前选择选项。Position表示弹出的列表框在主窗体上的位置,TextScale,字体缩放。再往下是三个颜色。

Padding表示选项排列间距。PopupMenu和上述情况类似,这里大家可以自己试着创建一个查看效果。

ScrollBar滚动条:滚动条创建比较简单,大家可以试着自己创建一个看看效果,它的使用需要结合别的控件才能发挥它强大的作用,这里我们留到以后的课程讲解。

声明: 本文由(zqcyou)原创编译,转载请保留链接: NGUI系列教程三

NGUI系列教程三的更多相关文章

  1. NGUI系列教程四(自定义Atlas,Font)

    今天我们来看一下怎么自定义NGUIAtlas,制作属于自己风格的UI.第一部分:自定义 Atlas1 . 首先我们要准备一些图标素材,也就是我们的UI素材,将其导入到unity工程中.2. 全选我们需 ...

  2. NGUI系列教程二

    接下来我们创建一个Label,NGUI->Open the Widget Wizard,打开widgetTool对话框,在Template中选择Label,确定AddTo右侧选项为panel,点 ...

  3. CRL快速开发框架系列教程三(更新数据)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  4. Android Studio系列教程三--快捷键

    Android Studio系列教程三--快捷键 2014 年 12 月 09 日 DevTools 本文为个人原创,欢迎转载,但请务必在明显位置注明出处!http://stormzhang.com/ ...

  5. NGUI系列教程五(角色信息跟随)

    在一些网络游戏中,我们常常可以看到角色的上方显示着角色的名称,等级,血量等信息.它们可以跟随角色移动,并且可以显示和隐藏.今天我们就来学习一下这些功能的实现方法.1. 新建unity工 程,导入NGU ...

  6. 黄聪:Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (高级)

    原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (高级) 企业库验证应用程序模块之配置文件模式: ...

  7. 黄聪:Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (初级)

    原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (初级) 企业库提供了一个很强大的验证应用程序模 ...

  8. Fastify 系列教程三 (验证、序列化和生命周期)

    Fastify 系列教程: Fastify 系列教程一 (路由和日志) Fastify 系列教程二 (中间件.钩子函数和装饰器) Fastify 系列教程三 (验证.序列化和生命周期) 验证 Fast ...

  9. webpack4 系列教程(三): 多页面解决方案--提取公共代码

    这节课讲解webpack4打包多页面应用过程中的提取公共代码部分.相比于webpack3,4.0版本用optimization.splitChunks配置替换了3.0版本的CommonsChunkPl ...

随机推荐

  1. 计算机程序和C++语言简介

    C++程序设计 第一章 计算机程序和C++语言简介 1.计算机是一台能够存储并处理数据的电子设备,包含硬件和软件两部分. 2.计算机硬件由: 1)中央处理单元(Central Processing U ...

  2. 【暴力模拟】UVA 1594 - Ducci Sequence

    想麻烦了.这题真的那么水啊..直接暴力模拟,1000次(看了网上的200次就能A)后判断是否全为0,否则就是LOOP: #include <iostream> #include <s ...

  3. UVA - 213 Message Decoding (输入字符串并对单个字符进行操作的输入输出)

    POINT: 关于表示一个编码:利用code字符数组表示一个编码字符,其中code[len][val]表示长度为len,二进制值为val的字符: 主程序如下: #include <iostrea ...

  4. RMI原理

    一.分布式对象 在学习 RMI 之前,先来分布式对象(Distributed Object):分布式对象是指一个对象可以被远程系统所调用.对于 Java 而言,即对象不仅可以被同一虚拟机中的其他客户程 ...

  5. systemverilog interface

    普通的模块使用法:注意我们这里只实现了部分功能....不是完全的读写模块....     module mem_core(   input logic wen,  input logic ren,   ...

  6. iis7 php urlrewrite 并隐藏index.php

    <rewrite> <rules> <rule name="OrgPage" stopProcessing="true"> ...

  7. JavaScript设计模式(一)

    使用JavaScript框架和库过程中, 我遇到过很多感觉上'奇形怪状'的代码. 大多数情况下, 按照惯例编写代码也能够写出很多出色的功能. 但是如果不从根本上理解它们实现的方法, 就没办法完全充分发 ...

  8. foo,bar,baz

    https://en.wikipedia.org/wiki/Foobar 原文: The terms foobar, foo, bar, baz and qux are sometimes used ...

  9. MySQL 테이블 타입(Heap, MyIsam, InnoDB...) 변경하기

    alter table 을 이용해서 기존의 생성된 테이블의 타입(Heap, MyIsam, InnoDB...)을 변경하는 명령어 입니다. 잠시 까먹은 분은 계실지 몰라도 원래 모르는 ...

  10. 【转】oracle的substr函数的用法

    [转]oracle的substr函数的用法 )     would return 'The' ) value from dual