首先,作个申明:

1、这是一个野路子非科班的小菜鸟的学习,故诚心欢迎批评指正(同时所述内容可能有误);

2、本人目前使用的Unity3D版本为 5.3.5;

言归正传!

事实上在开发过程中已经很少用GUI创建UI控件啦!(自从Unity4.6开始,Unity自带了可视化的UGUI)

但是,作为陪伴了Unity这么多年的好伙伴,同时也为了应景“系统学习”这四个字,本菜鸟决定花2--3个篇幅去

微微回顾一下关于GUI的知识点。闲话少叙,上干货!!

1、创建button(single):
在 void OnGUI()方法中:
GUI.Button (new Rect(Screen.width/10,Screen.height /2,Screen.width/5,Screen.height/10)," Button");//位置、尺寸、内容(还可以设置风格);

通过布局管理器绘制按钮:  GUILayout.Button(new GUIContent("play game", "Button1"));

2、创建Label:
在 void OnGUI()方法中:
GUI.Label (new Rect (Screen.width/10, Screen.height / 10, Screen.width / 5, Screen.height / 10), "Hellow World!");//位置、尺寸、内容(还可以设置风格);

3、创建Box、TextField、Toggle(开关(bool))均类似;

/*************************************************************/*****************************************************/

skin/color/tooltip/changed/backgroundColor/contentColor/enabled/depth:
    这些是图形用户组件的变量,用于:在整体上对图形用户界面组件做出相应的设置

4、在 void OnGUI()方法中设置背景颜色、组件颜色以及组件中文本颜色(会与组件颜色叠加合成)
   方法分别为:GUI.backgroundColor = Color.yellow;  GUI.color = Color.green;
   GUI.contentColor = Color.red;

5、还有其他方法(用时可具体查)
   changed/enabled(均是bool类型)。
   GUI.changed:用于检测我输入控件的数据是否发生发生变化;
   GUI.enabled:用于控制和判断图形用户界面的启用情况(只对该语句下方的控件起作用)。

6、Tooltip的用法(提示框变量)示例:
        //绘制一个名为click me 的按钮,并设置提示信息为This is the Tooltip;
        GUI.Button(new Rect(Screen.width / 2, Screen.height / 10, Screen.width / 5, Screen.height / 10), new GUIContent("click me", "This is the Tooltip"));
        //绘制一个标签lable,并将提示信息“This is the Tooltip”赋给标签
        GUI.Label(new Rect(Screen.width / 2, Screen.height / 5, Screen.width / 5, Screen.height / 10), GUI.tooltip);

7、depth变量
   按照深度对当前的图形用户界面的控件进行排序的行为;

好啦!由于实际开发中已经很少应用啦,故GUI相关知识粗略地提一提,有兴趣的小伙伴们可私信我,具体一起学习探讨!

【欢迎转载】

转载请表明出处: 乐学习

GUI创建各常用控件(一)的更多相关文章

  1. GUI创建各常用控件(二)

    继续接着上一篇! 在我看来有一点需要申明:由于是GUI的相关知识,所以我只是在复习中粗略的总结而已,因此参考价值可能有限,更多的是当作自己学习的一个记录以及便于自己查阅. 好啦!干货继续: 1.类似于 ...

  2. C#常用控件介绍

                                                  目录 1.窗体(Form) 2.Label (标签)控件 3.TextBox(文本框)控件 4.RichTe ...

  3. winFrom 常用控件属性及方法介绍

    目录 1.窗体(Form) 2.Label (标签)控件 3.TextBox(文本框)控件 4.RichTextBox控件 5.NumericUpDown控件 6.Button(按钮)控件 7.Gro ...

  4. C# 常用控件及单击事件

    1.窗体 1.常用属性 (1)Name属性:用来获取或设置窗体的名称,在应用程序中可通过Name属性来引用窗体. (2)WindowState属性: 用来获取或设置窗体的窗口状态. 取值有三种: No ...

  5. C# 常用控件属性及方法介绍

      C#常用控件属性及方法介绍                                               目录 1.窗体(Form) 2.Label (标签)控件 3.TextBox ...

  6. C#常用控件的属性以及方法(转载)

    -----以前看别人的,保存了下来,但是忘了源处,望见谅. C#常用控件属性及方法介绍 目录 1.窗体(Form) 2.Label (标签)控件 3.TextBox(文本框)控件 4.RichText ...

  7. C#常用控件和属性

    目录1.窗体(Form)2.Label (标签)控件3.TextBox(文本框)控件4.RichTextBox控件5.NumericUpDown控件6.Button(按钮)控件7.GroupBox(分 ...

  8. winform常用控件介绍

    1.窗体 12.Label 控件 33.TextBox 控件 44.RichTextBox控件 55.NumericUpDown 控件 76.Button 控件 77.GroupBox 控件 78.R ...

  9. 【转载】C#常用控件属性及方法介绍

    C#常用控件属性及方法介绍                                               目录 1.窗体(Form) 2.Label (标签)控件 3.TextBox(文 ...

随机推荐

  1. 使用ffmpeg下载m3u8流媒体

    安装 编译好的windows可用版本的下载地址(官网中可以连接到这个网站,和官方网站保持同步): http://ffmpeg.zeranoe.com/builds/ 或者: 百度网盘https://p ...

  2. hibernate 注解之 SequenceGenerator

    hibernate 注解之 SequenceGenerator https://blog.csdn.net/zgf19930504/article/details/54694807 JPA @Id 和 ...

  3. CentOS 7 mini 试用笔记

    CentOS 7 mini 试用笔记 安装过程中,网卡是默认关闭的,要手动打开. 安装好以后,查看IP地址:# ip addr----------------------1: lo: 本地回环2: e ...

  4. Lumen开发:结合Redis实现消息队列(3)

    4.运行队列监听器 开启任务监听器 Lumen包含了一个Artisan命令用来运行推送到队列的新任务.你可以使用queue:listen命令运行监听器: php artisan queue:liste ...

  5. 毕达哥拉斯三元组(勾股数组)poj1305

    本原毕达哥拉斯三元组是由三个正整数x,y,z组成,且gcd(x,y,z)=1,x*x+y*y=z*z 对于所有的本原毕达哥拉斯三元组(a,b,c) (a*a+b*b=c*c,a与b必定奇偶互异,且c为 ...

  6. gulp安装教程

    1.安装nodejs并选装cnpm: npm install cnpm -g --registry=https://registry.npm.taobao.org 2.全局安装gulp: cnpm i ...

  7. Java基础 - 常量与变量

    A:常量 内存中的一小块区域,在程序执行过程中,其值不可以发生改变的量称为常量 常量的几种表现形式: a:字符串常量 "HelloWorld" b:整数常量 12 c:小数常量 1 ...

  8. Java编程中的一些常见问题汇总

    转载自  http://macrochen.iteye.com/blog/1393502 每天在写Java程序,其实里面有一些细节大家可能没怎么注意,这不,有人总结了一个我们编程中常见的问题.虽然一般 ...

  9. js面对对象编程

    说到js,非常大一部分人会说我非常熟悉,在日常的web开发中经经常使用,那么你的js代码是符合面对对象思路的吗?那你会问我面向过程的js代码有什么不好吗?我的感受是面对对象的js编码更加简洁,降低了混 ...

  10. PHP安全编程之php.ini配置

    1.register_globals=On <?php//ex1.php  if(check_admin())  {  $is_admin=true;  }  if($is_admin)  {  ...