首先,作个申明:

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. 第一篇: Ansible 介绍

    应用场景:   BOSS:运维帮忙把所有的服务器tomcat 重启一下,谢谢!(tomcat 服务有2K台) 运维:………… 运维:  啪啪啪啪啪啪啪啪..........(键盘的声音响彻办公室) B ...

  2. Mysql----mysql启动服务时提示"服务名无效"

    1,首先说明一下我的环境,我刚开始是用的XAMPP这个集成的软件,里面安装了apache, mysql,tomcat这些软件,然后通过控制面板对其进行启动关闭的操作,这些操作很方便,但是我就用net ...

  3. 01 Memcached 安装与介绍

      一:Memcached 介绍 ()官网网址:www.mamcached.org () 主要功能是:高性能,分布式的内存对象缓存系统. ()Nosql不仅仅是关系型数据库,显著特点key value ...

  4. 由浅到深理解ROS(3)-命名空间

    全局命名空间: /rosout前面的反斜杠“/”表明该节点名称属于全局命名空间.之所以叫做全局名称因为它们在任何地方(包括代码.命令行工具.图形界面工具等的任何地方)都可以使用.无论这些名称用作众多命 ...

  5. 微信小程序之如何注册微信小程序

    所有文章均是CSDN博客所看,已按照作者要求,注明出处了,感谢作者的整理! 博客文章地址:http://blog.csdn.net/michael_ouyang/article/details/546 ...

  6. python接口自动化(四十二)- 项目结构设计之大结局(超详解)

    简介 这一篇主要是将前边的所有知识做一个整合,把各种各样的砖块---模块(post请求,get请求,logging,参数关联,接口封装等等)垒起来,搭建一个房子.并且有很多小伙伴对于接口项目测试的框架 ...

  7. WCF基础之序列化

    wcf是基于消息进行通信的,这篇就是简单说下序列化引擎是如何将.net object转化为xml消息.一般情况下很少用到这些,你只需定义数据协定之类的或者指定相应的序列化引擎,然后设置相应的特性就好. ...

  8. This instability is a fundamental problem for gradient-based learning in deep neural networks. vanishing exploding gradient problem

    The unstable gradient problem: The fundamental problem here isn't so much the vanishing gradient pro ...

  9. 【python】-- Socket接收大数据

    Socket接收大数据 上一篇博客中的简单ssh实例,就是说当服务器发送至客户端的数据,大于客户端设置的数据,则就会把数据服务端发过来的数据剩余数据存在IO缓冲区中,这样就会造成我们想要获取数据的完整 ...

  10. Django导出excel中文乱码解决方案

    Django官方文档有关于怎么生成csv文件的方法 import csv from django.http import HttpResponse def some_view(request): # ...