GUI.GetNameOfFocusedControl

Switch to Manual
public static string GetNameOfFocusedControl ();

Description

获取具有焦点的命名控件的名称。

控件名称使用 SetNextControlName 设置。当某个命名控件具有焦点时,该函数将返回其名称。如果没有任何控件具有焦点或获得焦点的控件未设置名称,则返回空字符串。

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.isKey && Event.current.keyCode == KeyCode.Return && GUI.GetNameOfFocusedControl() == "user") Debug.Log("Login");

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

另请参阅:SetNextControlNameFocusControl