版本:Unity 6 (6000.0)
语言简体中文
  • C#

Cursor.SetCursor

提出建议

已完成

感谢您帮助我们改进 Unity 文档的质量。我们无法接受所有提交,但我们确实会阅读用户提出的每条建议,并且会在适用情况下进行更新。

关闭

提交失败

由于某种原因,您的建议更改无法提交。请在几分钟后<a>重试</a>。感谢您花时间帮助我们改进 Unity 文档质量。

关闭

取消

说明

public static void SetCursor(Texture2D texture, Vector2 hotspot, CursorMode cursorMode);

参数

texture 用作鼠标的纹理。若要使用纹理,请在启用“读/写”的情况下导入该纹理。或者,可以使用默认鼠标导入设置。如果您要从代码中创建鼠标纹理,纹理必须为 RGBA32 格式、启用 alphaIsTransparency,且不具有 mip 链。若要使用默认鼠标,请将纹理设为“空”。
hotspot 相对于纹理左上角的偏移量,用作目标点。偏移量必须在光标的范围内。
cursorMode 是否将此鼠标渲染为受支持平台上的硬件鼠标,或强制使用软件鼠标。

说明

设置自定义鼠标用作自己的光标。

使用 Texture2D 调用 Cursor.SetCursor 以更改硬件指针(鼠标光标)的外观。

using UnityEngine;

// Attach this script to a GameObject with a Collider, then mouse over the object to see your cursor change. public class ExampleClass : MonoBehaviour { public Texture2D cursorTexture; public CursorMode cursorMode = CursorMode.Auto; public Vector2 hotSpot = Vector2.zero;

void OnMouseEnter() { Cursor.SetCursor(cursorTexture, hotSpot, cursorMode); }

void OnMouseExit() { // Pass 'null' to the texture parameter to use the default system cursor. Cursor.SetCursor(null, Vector2.zero, cursorMode); } }