从零开始学习UNITY3D(GUI篇)

邻近年底,心也有些散乱,加上工作忙了一阵,在达内培训的课程也落下了不少。对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( )函数一样。

时间: 2024-12-26 09:50:58

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

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

unity3d里面,也是包含window窗体的,下面看一下GUI.Window方法的详情 下面我们用代码实现一个通过开关显示窗体的隐藏和显示的功能,代码如下: public class windowsscript : MonoBehaviour { bool windowshow=true; Rect windowrect=new Rect(0,0,120,50); void OnGUI() { //定义一个toggle控制窗体的显示和隐藏 windowshow=GUI.Toggle(new R

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

控件组可以看成一个大的容器,控件组里面的控件,相对位置已该控件组为基准,而不再已屏幕左上角为基准. 下面来看一下代码实例及其效果截图: public class GUI2 : MonoBehaviour { int toolbarInt=0;//代表默认第n-1个按钮是激活的 string[] toolbarstring={"工具","窗体","帮助"};//按钮名称个数和集合 int selectgrid=0; string[] selectg

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

复合控件极其使用,toolbar,selectgrid 先看效果图: toolbar可以看作是一个button按钮的集合,一次只能点击一个按钮, selectgrid又可以堪称是一个toolbar的集合. 代码如下: using UnityEngine; using System.Collections; public class GUI2 : MonoBehaviour { int toolbarInt=0;//代表默认第n-1个按钮是激活的 string[] toolbarstring={"

C#程序员的春天之从零开始学习unity3D游戏开发入门教程一(前言)

我们不在“拖控件”,我们也有春天 序言:之前断断续续谢了一点unity的教程,但是不全面.这里表示歉意.今天准备重新做一套.今天也是换了新工作,也是新的开始.也希望以此来激励自己把这个教程一直写下去.想要学习unity的同学可以加这个群(326535328),可能会在qq课堂在线讲解一些相关知识. 乱扯一下:为什么说这时C#程序员的春天呢?在大多数java或者其他程序员的眼里,我们.net平台的程序员同胞都背负着”拖控件“的这么一个标签.某种程度上讲,.net的快速入门的精髓就是拖控件.然而外人

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

原文:从零开始学习jQuery (一) 开天辟地入门篇 本系列文章导航 从零开始学习jQuery (一) 开天辟地入门篇 从零开始学习jQuery (二) 万能的选择器 从零开始学习jQuery (三) 管理jQuery包装集 从零开始学习jQuery (四) 使用jQuery操作元素的属性与样式 从零开始学习jQuery (五) 事件与事件对象 从零开始学习jQuery (六) jQuery中的Ajax 从零开始学习jQuery (七) jQuery动画-让页面动起来! 从零开始学习jQuer

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

一.摘要 本系列文章将带您进入jQuery的精彩世界, 其中有很多作者具体的使用经验和解决方案,  即使你会使用jQuery也能在阅读中发现些许秘籍. 本篇文章是入门第一篇, 主要是简单介绍jQuery, 通过简单示例指导大家如何编写jQuery代码以及搭建开发环境. 详细讲解了如何在Visual Studio中配合使用jQuery. 转载请注明子秋出品!博客园首发! 二.前言 首先道个歉! "从零开始学习ASP.NET MVC"系列文章在即将介绍Filter时就没有更新了, 原因就是

从零开始学习jQuery (三) 管理jQuery包装集

本系列文章导航 从零开始学习jQuery (三) 管理jQuery包装集 一.摘要 在使用jQuery选择器获取到jQuery包装集后, 我们需要对其进行操作. 本章首先讲解如何动态的创建元素, 接着学习如何管理jQuery包装集, 比如添加,删除,切片等. 二.前言 本系列的2,3篇上面列举了太多的API相信大家看着眼晕. 不过这些基础还必须要讲, 基础要扎实.其实对于这些列表大家可以跳过, 等以后用到时再回头看或者查询官方的API说明. 本章内容很少, 主要讲解动态创建元素和操作jQuery

从零开始学习iOS开发1:认识xcode

在开始之前还是不得不提一下iPhone应用开发的工具,我当然之前是没接触过iPhone开发,也没使用过apple的任何一种设备,所以我的概念中只知道xcode是最专业的iOS开发工具,现在它是免费的,听说之前还需要付钱才可以安装,你的Mac系统安装好后应该会有AppStore的,从里面的免费区域应该可以找到,安装就行了,只是好像需要点时间,不是你的网络不好,应该是该应用不在国内服务器上,下载相当慢. 安装好后,在dock上应该会自动出现启动图标的,如果没有出现,你可以从Application中拖

从零开始学Sketch——进阶篇

本文转自 http://www.jianshu.com/p/ff70b5f35c8f 从零开始学Sketch——进阶篇 Sketch是一款矢量绘图应用,而矢量绘图无疑是目前进行网页.图标以及界面设计的最好方式. 在初识了Sketch的界面布局和基础工具之后,我们就可以开始进入高阶的Sketch工具篇学习了.这篇文章主要会涉及Sketch模板.插件的使用,以及Sketch在具体使用过程中的一些技巧分享. 如果你曾接触过PS.AI.Axure等软件,那么接下来的内容你应该不会陌生,因为所有的设计软件