FocusWindow, UnfocusWindow
说明 |
---|
用法
FocusWindow
需要传入窗口的索引号,即 GUI.Window
或 GUILayout.Window
中设定的索引号。而 UnfocusWindow
只能在窗口绘制函数中使用,所以不需要传入参数。
public static void FocusWindow(int windowID);
public static void UnfocusWindow();
示例
private void OnSceneGUI () {
Handles.BeginGUI ();
_window1 = GUI.Window (0, _window1, OnWindowGUI, "Window 1");
_window2 = GUI.Window (1, _window2, OnWindowGUI, "Window 2");
_window3 = GUI.Window (2, _window3, OnWindowGUI, "Window 3");
Handles.EndGUI ();
}
private void OnWindowGUI (int id) {
if (GUILayout.Button ("Focus on next window")) {
GUI.FocusWindow (id + 1 == 3 ? 0 : id + 1);
}
if (GUILayout.Button ("Unfocus window")) {
GUI.UnfocusWindow ();
}
GUI.DragWindow ();
}
处于焦点的窗口,标题栏的颜色相对更明亮一些,如下图中的 Window 2: