TextButton 没有打开 Frame

我在 ScreenGui 中有个简单的文本按钮,以下是 Lua 代码。

local Button = script.Parent
local Frame = script.Parent.Parent.Frame

function onClick()
    if Frame.Visible == false then
        Frame.Visible = true
    elseif Frame.Visible == true then
        Frame.Visible = false
    end
end

Button.MouseButton1Click:Connect(onClick)

当我点击按钮时,框架没有显示出来。

该框架默认不可见。

该按钮设置为激活状态、可见和可选择。

点赞
用户10450122
用户10450122

尝试使用干净的脚本将Frame更改为可见,以检查语法是否正确。例如:

local Frame = script.Parent.Parent.Frame
Frame.Visible = true

如果仍然无法正常工作,请尝试删除elseif。我之前遇到过脚本不喜欢elseif命令的问题。您可以使用else,它将完成完全相同的工作。

2018-10-16 13:40:11
用户5373986
用户5373986

如果在函数开始之后添加print("Testing")

function onClick()
    print("Testing")
    if Frame.Visible == false then

然后运行代码以确保您的onClick()函数实际被调用。

如果代码被调用,它会打印“Testing”,如果没有打印,则知道您的代码从未运行。

2018-10-17 07:50:08
用户10006197
用户10006197

我有点傻。在发布了这个问题之后,我尝试做了更多的研究。我发现这可能是脚本类型的原因,而且确实如此。你需要使用 localscript 来处理这些事情。

无论如何,还是谢谢!

2018-10-19 03:16:48
用户10649630
用户10649630

这里需要提醒一下,当你在进行逻辑操作时,例如:

if button.Visible == true then button.Visible = false

你可以简化代码,写成

button.Visible = not button.Visible

我倒是可以回答剩余的问题,但你已经选择了一份答案!

2018-11-14 03:52:12