邻近年底,心也有些散乱,加上工作忙了一阵,在达内培训的课程也落下了不少。对unity3d的热度似乎也有点点下降。痛定思痛,又在淘宝上买了写蛮牛网的视频。总之不管是用任何手段都要逼着自己不要浪费了培训的那些钱。言归正传,现在开启GUI篇章。

GUI这东西在我脑子里,自动归结为.net的用户交互控件,实际上应该也就是这个样子,类似于button,lable,textbox....的这些东西在GUI里面都有。

这一节讲一些简单的GUI。

先来看效果图:

1,红框部分,button按钮的text值随着在文本框的输入文本变化而变化,始终保持一致。

2.Toggle其实是一个toggle控件,类似于winfrom的RadioButton,它的未知随着HorizontalScrollbar控件的拖动而拖动。

代码其实挺简单的,如下:

using UnityEngine;
using System.Collections; public class Gui : MonoBehaviour {
public GUIStyle buttonstyle;
string text="";
bool result;
float hsliderVale;
// Use this for initialization
void Start () { } // Update is called once per frame
void Update () { }
void OnGUI(){
hsliderVale = GUI.HorizontalScrollbar (new Rect(80, 100, 100, 30),hsliderVale,2,0,10);
result = GUI.Toggle(new Rect(10 * hsliderVale, 170, 100, 30),result,"Toggle");
text = GUI.TextField(new Rect (310, 330, 100, 40),text);
GUI.Button(new Rect(180,120,100,150),"这是一个button按钮","button");
GUI.Button(new Rect(110,120,200,210),"这是一个button按钮","toggle");
GUI.Label(new Rect(0,0,200,50),"box类型的lable","box");
GUI.Label (new Rect (150, 110, 200, 100), "buttonstyle");
if (GUI.RepeatButton(new Rect (310, 220, 200, 100),text) )
{
print("用户单击了重复按钮");
} }
}

Rect()这个定位函数被多次用到,其具体的定义如下:

Rect(x,y,w,h)
x表示水平距离,即以左上角为0,0点,距离左边的距离
y表示垂直距离,距离顶部的距离
w表示这个矩形的宽度
h表示这个矩形的高度

UnityGUI控制是利用一类被称为OnGUI()的函数,只要在控制脚本激活的状态下,OnGUI()函数可以在每帧调用,就像Update( )函数一样。

从零开始学习UNITY3D(GUI篇)的更多相关文章

  1. 从零开始学习UNITY3D(GUI篇 GUI.Window)

    unity3d里面,也是包含window窗体的,下面看一下GUI.Window方法的详情 下面我们用代码实现一个通过开关显示窗体的隐藏和显示的功能,代码如下: public class windows ...

  2. 从零开始学习UNITY3D(GUI篇 群组视图控件)

    控件组可以看成一个大的容器,控件组里面的控件,相对位置已该控件组为基准,而不再已屏幕左上角为基准. 下面来看一下代码实例及其效果截图: public class GUI2 : MonoBehaviou ...

  3. 从零开始学习UNITY3D(GUI篇 2)

    复合控件极其使用,toolbar,selectgrid 先看效果图: toolbar可以看作是一个button按钮的集合,一次只能点击一个按钮, selectgrid又可以堪称是一个toolbar的集 ...

  4. C#程序员的春天之从零开始学习unity3D游戏开发入门教程二(创建项目及基本面板介绍)

    一项目创建: 创建项目是开发的第一步. 运行untiy之后如果是第一次运行会弹出 我们这里随便创建一个项目. 二Untiy面板介绍: 三代码编辑器的切换: 这里我安装了vs2012. 到这里开发环境基 ...

  5. 从零开始学习jQuery (一) 入门篇

    本系列文章导航 从零开始学习jQuery (一) 入门篇 一.摘要 本系列文章将带您进入jQuery的精彩世界, 其中有很多作者具体的使用经验和解决方案,  即使你会使用jQuery也能在阅读中发现些 ...

  6. 从零开始学习jQuery (一) 开天辟地入门篇

    一.摘要 本系列文章将带您进入jQuery的精彩世界, 其中有很多作者具体的使用经验和解决方案,  即使你会使用jQuery也能在阅读中发现些许秘籍. 本篇文章是入门第一篇, 主要是简单介绍jQuer ...

  7. ASP.NET从零开始学习EF的增删改查

           ASP.NET从零开始学习EF的增删改查           最近辞职了,但是离真正的离职还有一段时间,趁着这段空档期,总想着写些东西,想来想去,也不是很明确到底想写个啥,但是闲着也是够 ...

  8. 从零开始学习jQuery (五) 事件与事件对象

    本系列文章导航 从零开始学习jQuery (五) 事件与事件对象 一.摘要 事件是脚本编程的灵魂. 所以本章内容也是jQuery学习的重点. 本文将对jQuery中的事件处理以及事件对象进行详细的讲解 ...

  9. 从零开始学习jQuery (四) 使用jQuery操作元素的属性与样式

    本系列文章导航 从零开始学习jQuery (四) 使用jQuery操作元素的属性与样式 一.摘要 本篇文章讲解如何使用jQuery获取和操作元素的属性和CSS样式. 其中DOM属性和元素属性的区分值得 ...

随机推荐

  1. 旧的VirtualBox News(从1.3.4开始)

    https://linuxtoy.org/archives.html https://linuxtoy.org/archives/virtualbox-134.html http://www.cnbl ...

  2. Java WebService把Date类型转换成XMLGregorianCalendar

    JavaEE 的WebService中的Date类型在Web应用中调set方法的时候,默认情况下,JAXB将xsd:date, xsd:time, 和xsd:dateTime映射为XMLGregori ...

  3. Hibernate 、多表关联映射-多对一关系(many-to-one)

    Hibernate.cfg.xml: <session-factory name="sessionFactory"> <property name="h ...

  4. Linux是什么

    计算机主要以二进制为单位,而目前常用的磁盘容量单位为B,其单位换算为1B=8bit,其他的以1024为其倍数,如1GB=1024MB等. 操作系统(Operation System)主要用于管理与驱动 ...

  5. 安卓图片框架:universal-image-loader的高速使用

    在安卓开发过程中难免会遇到下面几个情况: 1.图片异步载入 2.图片缓存 3.图片显示 4.其他--(忘记了) 以上的这些情况,可能要自己去写不少代码去实现这些功能.并且对于一些新手,可能写了半天,发 ...

  6. mysql insert和前台显示乱码

    近期在搞服务端.遇到问题例如以下, 在mysql中插入中文乱码.或mysql中中文正常显示,但jsp在前台显示mysql中的中文时乱码. 解决方法,进入mysql控制台,运行 SET characte ...

  7. 【Android Tricks 6】ViewPager首页与尾页的滑动动作响应

    ViewPager能够说是Android应用中使用比較广发的一个组件了.它能够帮助我们非常 方便地实现滑动更换View的效果.刚好近期搞的一个项目有一个需求用到了这个,同 时是要能在首页和尾页滑动时可 ...

  8. Eclipse和PyDev搭建python开发环境

                   Eclipse和PyDev搭建python开发环境 1.1整体目标 本文档作为python学习者的新手教程,通过本教程能够了解python用途.语法.在实际工作中的应 ...

  9. 兔子--Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK

    错误原因: Activity打开别的Activity的时候会默认把新的Activity放到自己的task中,所以不用指定,可是别的地方就得指定了. 解决的方法:intent.addFlags(Inte ...

  10. mac终端下svn常用命令

    svn基本的操作流程就是: 你刚刚进入一个新的公司,让你接手一个正在进行的项目,你打开终端写下了:svn co svn://192.168.1.1/pro/domain 然后就可以在当前目录里面找到一 ...