GUI控件:
1.在Start中初始化,在OnGUI中调整。
2.公有变量才会出现在Inspector面板。
3.GUI控件的初始化和处理在OnGUI内完成。
4.JavaScript的中文为UTF-8编码可显示,CSharp的中文为UTF-16编码可显示。

基本信息:

屏幕宽高:Screen.width Screen.height
图片宽高:img.width img.height

一 标签Label
GUI.Label(Rect(x,y,width,height),<Str or Texture, such as Texture2D>);

二 按钮Button
var buttonTexture : Texture2D;
GUI.Button(Rect(x,y,width,height),buttonTexture);
设置文字颜色:GUI.color = Color.green;
设置背景颜色:GUI.backgroundColor = Color.red;

三 输入框TextField
message = GUI.TextField(Rect(x,y,width,height),message,size);
message = GUI.PasswordField(Rect(x,y,width,height),message,"*"[0],size);
返回值类型为String.

四 复选框与标签页selectToggle and Toolbar
var barResource : String[] = ["bar1","bar2","bar3",...];
var select : int;
var state : boolean;
select = GUI.Toolbar(Rect,default,barResource);//第二个参数为默认在第几个标签上,后面为名字列表,
有几个元素就有几个标签。
获取标签页:select = GUI.Toolbar(...);
获取复选框:state = GUI.Toggle(Rect,state,<name>);

五 滑动条Slider
var now_value : int = 0;
now_value = GUI.VerticalSlider(Rect,now_value,endvalue,startvalue)

六 滚动条ScrollView
定义Vector2变量储存水平和垂直滚动条位置。
var scrollPosition : Vector2;
scrollPosition[0] = <水平初始位置>;
scrollPosition[1] = <垂直初始位置>;

scrollPosition = GUI.BeginScrollView(<Rect滚动视图>,<Vector2起始位置>,
                     <Rect整体显示范围(大于parameter1)>,true,true);
//最后两个参数表示是否智能显示,即不该显示滚动条就不显示。

七 群组Group
群组内采用相对坐标,且群组移动组内物体统一移动。
GUI.BeginGroup(new Rect(x,y,width,height));
//在这里添加组内成员
GUI.EndGroup();

八 窗口Window
GUI.Window(ID,Rect,window_function,name);
使用:Debug.log(<string>);可以在最下面的消息面板输出字符串。

九 样式表GUISkin
使用:GUI.skin = mySkin来应用样式表

十 布局GUILayout
GUILayout自动计算显示区域。
大部分空间的绘制可以将GUI类换为GUILayout类。
GUILayout也可以设置布局的宽高。利用Width与Height方法。
使用:BeginHorizontal()与EndHorizontal()方法
默认是垂直布局,因此多个布局之间默认以垂直方式排列。
以及:BeginVertical()与EndVertical()方法
可以设定水平、垂直布局,且可以嵌套使用。

十一 链表ArrayList()类
使用 :var winArrayList = new Arraylist();声明
Add方法添加一个节点,RemoveAt方法删除一个节点。
对于窗口的用法:
winArrayList.Add(Rect);
winArrayList[i] = GUILayout.Window(...);
winArrayList.RemoveAt(windowID);

一二 静态图片DrawTexture
var pic : Texture2D;
GUI.DrawTexture(Rect,pic);

实用的类方法width和height可以获取图像的实际宽高,例如pic.width

十三 2D动画
使用Object[]类型的数组存储动画帧
载入动画帧的方法:
private var animation : Object[];
animation = Resources.LoadAll("<Folder Name>");//载入 /Resouurces/<Folder Name>/ 下全部图片
绘制动画就是采用GUI.DrawTexture方法。

Unity3D学习笔记(一)GUI控件的调用的更多相关文章

  1. WPF-学习笔记 动态修改控件Margin的值

    原文:WPF-学习笔记 动态修改控件Margin的值 举例说明:动态添加一个TextBox到Grid中,并设置它的Margin: TextBox text = new TextBox(); t_gri ...

  2. 学习笔记:UpdatePanel控件

    Asp.net UpdatePanel 允许用户构建一个丰富的,以客户端为中心的应用程序,引用UpdatePanel控件,能够实现页面的部分刷新,一个包含scriptManage和 UpdatePan ...

  3. 【jQuery UI 1.8 The User Interface Library for jQuery】.学习笔记.4.Tabs控件

    之前,我们已经介绍了 jQuery UI 库,CSS 框架.下面,我们将学习这些有增强可视化效果,高度可配置的用户交互组件. Tab 的特性是,点击 tab 后,会高亮该 tab,并显示他的关联con ...

  4. Android学习笔记_30_常用控件使用

    一.状态栏通知(Notification): 如果需要查看消息,可以拖动状态栏到屏幕下方即可查看消息.发送消息的代码如下: public void sendNotice(View v){ int ic ...

  5. 【jQuery UI 1.8 The User Interface Library for jQuery】.学习笔记.9.Progressbar控件

    Progressbar控件用来显示任意进程的完成百分比. 默认安装启用 配置选项 控件暴露的事件API progressbar暴露的独一无二的方法 一些现实生活的例子 当前版本中,我们或系统必须明确进 ...

  6. 【jQuery UI 1.8 The User Interface Library for jQuery】.学习笔记.8.Datepicker控件

    默认datepicker的安装启用 探索它的配置选项 安装启用一个触发按钮 配置一个供选择的动画 dateFormat选项 简单的国际化 多月datepicker 日期范围选择 datepicker的 ...

  7. 【jQuery UI 1.8 The User Interface Library for jQuery】.学习笔记.7.Slider控件

    默认slider的安装启用 为slider自定义风格 修改配置选项 创建一个垂直的slider 设置最大最小值,和默认值 启用多个 手柄 和 范围 slider内置的回调事件 slider的方法 这个 ...

  8. 【jQuery UI 1.8 The User Interface Library for jQuery】.学习笔记.6.Dialog控件

    习惯上,我们播放一条简短的信息,或向浏览者询问一个问题,都会用到dialog. 创建一个基本的dialog 使用dialog 选项 形式 启用内置动画 给dialog添加按钮 使用dialog回调函数 ...

  9. 【jQuery UI 1.8 The User Interface Library for jQuery】.学习笔记.5.Accordion控件

    accordion是另一个UI控件,能允许你将一组content加入相互分隔的.能够被浏览者的交互打开或关闭的panels中.因此,它大多数的content在初始化的时候是隐藏的,很像tabs控件.每 ...

随机推荐

  1. Spark核心类:弹性分布式数据集RDD及其转换和操作pyspark.RDD

    http://blog.csdn.net/pipisorry/article/details/53257188 弹性分布式数据集RDD(Resilient Distributed Dataset) 术 ...

  2. Not saving crash log because we have reached the limit for logs to store on disk.解决办法

    一.问题简述: Xcode, window>Devices>DEVICES选中自已的设备,打开控制台:提示日志存量已达限制,这个是系统抛出的log."Not saving cra ...

  3. CCSpriteBatchNode中存放元素的一点理解

    该对象只能包含基于CCSprite的对象,并且该要求适用于一切子孙对象.即加入CCSpriteBatchNode的任何对象都必须是CCSprite或其子类. 比如CCSpriteBatchNode包含 ...

  4. API创建员工支付方式

    DECLARE ln_method_id PAY_PERSONAL_PAYMENT_METHODS_F.PERSONAL_PAYMENT_METHOD_ID%TYPE; ln_ext_acc_id P ...

  5. HTML5中 基本用法及属性 韩俊强的博客

    从今天开始更新H5相关学习:希望大家能一起学习,多学习一门语言,多一门乐趣! 了解Html5: Html5基本属性: <!DOCTYPE html> <html lang=" ...

  6. HDFS追本溯源:体系架构详解

    Hadoop是一个开发和运行处理大规模数据的软件平台,是Apache的一个用Java语言实现开源软件框架,实现在大量计算机组成的集群中对海量数据进行分布式计算.用户可以在不了解分布式底层细节的情况下, ...

  7. 看人装X,我就来气,开启极限装X模式

    本文书写,纯属扯淡,请勿观看 4进制比二进制更合理,在01的状态中添加了两种状态,从无到有和从有到无的两种过度状态. 如果非要用数值表示,用概率表示.01作为近代计算机的基础,但终究淘汰,构成下一代计 ...

  8. 如何彻底的删除MySQL数据库(图文教程)

    最近有个小课题数据库使用Mysql,提前写一下Mysql作为复习. 第一步当然是要看如何卸载Mysql,因为安装之前要清理掉一切与Mysql有关的数据,否则后边安装失败. 以下操作以Window7操作 ...

  9. 精通CSS+DIV网页样式与布局--图片效果

    提到图片效果,小伙伴们可能会想到美图秀秀,ps等,这些软件都是款非常不错的照片处理软件,包括常用的:黑白,增强,高斯,高对比,夜视,老照片和铅笔画等等.不管你是否是专业的 照片拍摄人员,我们都可以通过 ...

  10. A*寻路算法入门(七)

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...