Version: 2021.3

GUI.SetNextControlName

切换到手册
public static void SetNextControlName (string name);

描述

设置下一个控件的名称。

将使用给定名称注册下一个控件。

另请参阅:GetNameOfFocusedControlFocusControl

// Sets the login textfield with "user".  If it is selected and the user
// presses enter, it prints Login

using UnityEngine; using System.Collections;

public class ExampleClass : MonoBehaviour { public string login = "username"; public string login2 = "no action here";

void OnGUI() { GUI.SetNextControlName("user"); login = GUI.TextField(new Rect(10, 10, 130, 20), login);

login2 = GUI.TextField(new Rect(10, 40, 130, 20), login2); if (Event.current.Equals(Event.KeyboardEvent("return")) && GUI.GetNameOfFocusedControl() == "user") Debug.Log("Login");

if (GUI.Button(new Rect(150, 10, 50, 20), "Login")) Debug.Log("Login"); } }