摘自Unity文档

EditorGUIUtility.AddCursorRect

public static void AddCursorRect(Rect position, MouseCursor mouse);
public static void AddCursorRect(Rect ### position, MouseCursor mouse, int controlID);

Parameters

  • position The rectangle the control should be shown within.
    鼠标悬停的区域
    PS:如果只做拖动控件时,这个范围应该大于控件范围,否则鼠标会因为先移出范围变回普通样式,造成鼠标样式一直在闪
  • mouse The mouse cursor to use.
  • controlID ID of a target control.
// Create a small window that has a color box in it.
// Hovering over it causes a Zoom mouse cursor to appear.  (The window is not
// zoomed however.)
using UnityEngine;
using UnityEditor;

public class AddCursorRectExample : EditorWindow
{
    [MenuItem("Examples/AddCursorRect Example")]
    static void addCursorRectExample()
    {
        AddCursorRectExample window =
            EditorWindow.GetWindowWithRect<AddCursorRectExample>(new Rect(0, 0, 180, 80));
        window.Show();
    }

    void OnGUI()
    {
        EditorGUI.DrawRect(new Rect(10, 10, 160, 60), new Color(0.5f, 0.5f, 0.85f));
        EditorGUI.DrawRect(new Rect(20, 20, 140, 40), new Color(0.9f, 0.9f, 0.9f));
        EditorGUIUtility.AddCursorRect(new Rect(20, 20, 140, 40), MouseCursor.Zoom);
    }
}

相关文章:

  • 2021-07-09
  • 2021-11-03
  • 2021-09-05
  • 2021-12-29
  • 2022-12-23
  • 2022-12-23
  • 2021-05-18
  • 2022-12-23
猜你喜欢
  • 2021-09-09
  • 2021-11-01
  • 2021-10-06
  • 2021-09-08
  • 2022-12-23
  • 2021-12-26
相关资源
相似解决方案