我正在尝试编写一个脚本,在Roblox Studio中告诉我鼠标何时进入和离开ClickDetector

源代码如下。

local detector = script.Parent.ClickDetector -- 将 click detector 变量设置成局部变量以节省时间
function mousein() -- 鼠标进入函数
    print("鼠标已进入!") -- 在输出中打印“鼠标已进入!”
end -- 函数结尾
function mouseout()-- 鼠标离开函数
    print("鼠标已离开!") -- 在输出中打印“鼠标已离开!”
end -- 函数结尾
detector.MouseHoverEnter:Connect(mousein) -- 当我的鼠标悬停在clickdetector上时,运行 mousein
 detector.MouseHoverLeave:Connect(mouseout)-- 当我的鼠标离开clickdetector时,运行 mouseout

为了方便阅读,我给代码加了标签。 请在答案中放置能够运行的代码!

这是我在 StackOverflow 上的第一个问题。我刚刚开始接触编程。

点赞
用户7396148
用户7396148

你需要创建 ClickDetector 实例。

local detector = Instance.new("ClickDetector")
detector.Parent = thing --想要检测鼠标事件的任意对象
detector.MaxActivationDistance = 10

function mousein()
    print("鼠标已进入!")
end
function mouseout()
    print("鼠标已离开!")
end

detector.MouseHoverEnter:Connect(mousein)
detector.MouseHoverLeave:Connect(mouseout)

或者,如 API 文档所述,为了让 script.Parent.ClickDetector 正常工作,必须将其放置在父对象为 ClickDetectorScriptLocalScript 中。

APIREFERENCE > INPUT > CLICKDETECTOR > MouseHoverEnter

2021-08-13 19:48:33