TextField控件主要用于监听用户输入的信息,其应用非常普遍,比如在游戏登录界面中,玩家输入用户名与密码后,点击“确认”按钮判断其输入是否正确,或者游戏通关后填写胜利者姓名与输入相关游戏信息等。
一般情况下,GUI.TextField()方法显示输入框,该方法的返回值为用户输入的字符串信息。使用GUI.PasswordField()方法,可以将用户输入的信息显示为任意字符串,一般在输入密码时将密码以“****”的形式显示。后面的参数“*”[0]用来将输入的字符串显示为“****”。
下面是说明控件用法、效果的代码示例:
#pragma strict //定义存储用户名的变量 private var username:String; //定义存储密码的变量 private var password:String; //定义存储提示信息的变量 private var editShow:String; function Start () { editShow = "请输入正确的用户名与密码!"; username = "请输入用户名"; password = "请输入密码"; } function OnGUI () { //显示提示信息内容 GUI.Label(Rect(10,10,Screen.width,30),editShow); //编辑框提示信息 GUI.Label(Rect(10,40,50,30),"用户名:"); //获取用户名输入框中的输入内容 username = GUI.TextField(Rect(60,40,200,30),username,15); GUI.Label(Rect(10,80,50,30),"密 码:"); //获取密码输入框中的输入内容 password = GUI.PasswordField(Rect(60,80,200,30),password,"*"[0],15); if(GUI.Button(Rect(10,120,100,50),"登录")){ //点击按钮修改提示信息 editShow = "你输入的用户名为:"+username+" 你输入的密码为:"+password; } }
上述代码中,使用GUI.TextField()方法在屏幕中添加一个输入框对象,用户可以在输入框中输入任意文字,该方法的返回值为用户输入的信息,返回值数据类型为String。GUI.PasswrodField()方法同样可以在屏幕中添加一个输入框对象,其用法与GUI.TextField()方法几乎一样,但是这个输入框限制了显示的内容,让其显示的内容以“*”代替,程序运行后的结果如下图所示:
<!--EndFragment-->
<!--EndFragment-->