首先,作个申明:

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. 大型网站技术学习-2. 云计算之OpenStack简述

    上一章讲,虚拟化能够充分的利用资源,带来各种各样的好处. 当一个网站不大,只需要四五台机器就可以支撑的时候,可以采用手工的方式虚拟机,但是当网站流量很高,需要成千上万台机器的时候,那就非常不方便了. ...

  2. 多媒体开发之--- live555 vs2010/vs2013下编译,使用,测试

    Ⅰ live555简介 Live555 是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了对标准流媒体传输协议如RTP/RTCP.RTSP.SIP等的支持.Live555实现了对多种音视频编 ...

  3. js读取json包装的map集合

    后台 Map<String,Integer> map = new HashMap<>(); map.put("你好1", 1); map.put(" ...

  4. hdu 2036 改革春风吹满地【求多边形面积模板】

    链接: http://acm.hdu.edu.cn/showproblem.php?pid=2036 http://acm.hust.edu.cn/vjudge/contest/view.action ...

  5. 监听并保存ssh账号密码

    有时候渗透搞下一台服务器的权限,想通过此服务器抓取其他服务器的ssh密码.就可以用以下方法,如果管理员通过这台服务器作为跳板登录其他服务器,密码就会记录下来. alias ssh='strace -o ...

  6. HTTP 304 详解

    把Last-Modified 和ETags请求的http报头一起使用,这样可利用客户端(例如浏览器)的缓存.因为服务器首先产生 Last-Modified/Etag标记,服务器可在稍后使用它来判断页面 ...

  7. 003-unity3d 物理引擎简介以及示例

    一.概述 物理引擎就是模拟真实世界中物体碰撞.跌落等反应的引擎,通过ballence.愤怒的小鸟等理解.Unity3D的物理引擎使用的是Nvidia的PhysX. 物理引擎是一个计算机程序模拟牛顿力学 ...

  8. 读取ByteBuffer有效的数据

    转:https://zhidao.baidu.com/question/427134449349230532.html说道 ByteBuffer的缓冲区,就需要知道缓冲区的的三个状态1)capacit ...

  9. 读paper:image caption with global-local attention…

    最近的图片caption真的越来越火了,CVPR ICCV ECCV AAAI很多顶级会议都有此类的文章,今天我来讲一篇发表在AAAI的文章,因为我看了大量的论文,最近感觉AAAI越来越水了.所以这篇 ...

  10. Python stdout

    (1)stdout 与 print 当我们在 Python 中打印对象调用 print obj 时候,事实上是调用了 sys.stdout.write(obj+'\n') print 将你需要的内容打 ...