<Unity3D>Unity3D入门篇——第四讲 GUI控件(二)
2013-12-26 17:00
417 查看
三、TextField控件
TextField控件主要用于监听用户的输入信息,我们通常使用GUI.TextField()方法来显示输入框,其返回值类型为string型。Parameters(参数):
position : Rect ——用于在屏幕绘制文本框的位置(起点x轴坐标,起点y轴坐标,文本框的宽度,文本框的高度)
text : String ——显示的编辑文本,这个函数的返回值应该赋回给字符串
maxLength : int ——控制字符串的最大长度,如果不设置,用户可以一直输入
style : GUIStyle ——使用样式,如果不设置,文本框的样式将使用当前的GUISkin皮肤
Returns(返回值):
字符串类型——被编辑的字符串
Description(描述):
创建一个单行的文本框,用户可以编辑字符串(注:与TextArea进行区别,TextArea是多行的,后面会详细说明!)
四、PasswordField控件
顾名思义,PasswordField(密码字段)控件是用来进行密码输入的文本框控件。我们可以通过GUI.PasswordField()来进行该控件的显示。和普通文本框一样,该控件的返回值也是为String类型。Paraments(参数):
position : Rect —— 用来密码字段在屏幕上的矩形位置(起点x坐标,起点y坐标,控件宽度,控件高度)
password : String —— 编辑的密码。这个函数的返回值应该赋回给字符串
maskChar : char —— 用于密码的字符遮罩。即,一般的我们都使用******来显示密码的
maxLength : int —— 控制字符串的最大长度,如果不设置,用户可以一直输入。
style : GUIStyle —— 该控件使用的样式。如果不设置,该控件将使用当前的GUISkin皮肤。
Returns(返回):
字符串类型——返回被编辑的密码
Description(描述):
创建一个文本框来给用户输入密码。
案例——制作一个简单的用户登录窗口。用户名为zuoyamin,密码为123
Login.cs
using UnityEngine; using System.Collections; public class Login : MonoBehaviour { private string userName;//用户名 private string userPassword;//密码 private string info;//信息 void Start () { //初始化 userName = ""; userPassword = ""; info = ""; } void OnGUI() { //用户名 GUI.Label(new Rect(20,20,50,20),"用户名"); userName = GUI.TextField(new Rect(80,20,100,20),userName,15);//15为最大字符串长度 //密码 GUI.Label(new Rect(20,50,50,20),"密 码"); userPassword = GUI.PasswordField(new Rect(80,50,100,20),userPassword,'*');//'*'为密码遮罩 //信息 GUI.Label(new Rect(20,100,100,20),info); //登录按钮 if(GUI.Button(new Rect(80,80,50,20),"登录")) { if(userName == "zuoyamin" && userPassword == "123") { info = "登录成功!"; } else { info = "登录失败!"; } } } }
将Login.cs绑定到Main Camera上,点击Play按钮。
五、TextArea控件
TextArea(文本区域)控件用来显示多行文本。使用GUI.TextArea()来绘制。其返回值也是String类型。Parameters(参数):
position : Rect —— 在屏幕上的矩形位置(起点x坐标,起点y坐标,控件宽度,控件高度)
text : String —— 显示的编辑文本。这个函数的返回值应该赋回给字符串
maxLength : int —— 控制字符串的最大长度,如果不设置,用户可以一直输入。
style : GUIStyle —— 该控件使用的样式。如果不设置,该控件将使用当前的GUISkin皮肤。
Returns(返回):
字符串类型——返回被编辑的文本
Description(描述):
创建一个多行文本区域,用户可以编辑文本。
案例——用TextArea来显示一首诗
TextArea.cs
using UnityEngine; using System.Collections; public class TextArea : MonoBehaviour { private string info; void Start () { info = " 悯农-李绅 \n锄禾日当午,\n汗滴禾下土。\n谁知盘中餐,\n粒粒皆辛苦。"; } void OnGUI() { GUI.TextArea(new Rect(20,20,90,100),info); } }将TextArea.cs绑定到Main Camera上,点击运行按钮。
相关文章推荐
- <Unity3D>Unity3D入门篇——第四讲 GUI控件(二)
- <Unity3D>Unity3D入门篇——第五讲 GUI控件(三)
- <Unity3D>Unity3D入门篇——第六讲 GUI控件(四)
- <Unity3D>Unity3D入门篇——第三讲 GUI控件(一)
- <Unity3D>Unity3D入门篇——第五讲 GUI控件(三)
- <Unity3D>Unity3D入门篇——第六讲 GUI控件(四)
- <Unity3D>Unity3D GUI控件
- <Unity3D>Unity3D入门篇——第二讲 初步认识Unity
- <Unity3D>Unity3D入门篇——第一讲 Unity3D的安装和破解
- <Unity3D>Unity3D入门篇——第三讲 GUI控件(一)
- <Unity3D>Unity3D的四种坐标系
- <Unity3D>Unity3D入门篇——第四讲 GUI控件(二)
- <Unity3D>Unity3D入门篇——第五讲 GUI控件(三)
- <Unity3D>Unity3D入门篇——第六讲 GUI控件(四)
- <Unity3D>Unity3D的四种坐标系
- <Unity3D>Unity3D的四种坐标系
- <Unity3D>Unity3D在android下调试
- <Unity3D>Unity3D中MeshRenderer的使用
- <<AI入门(10)>>(C)
- <asp:Menu> 控件 应用css样式