我正在尝试制作一个可更改文本但无法正常工作的Roblox GUI

时间:2020-01-04 19:28:26

标签: lua roblox

game.StarterGui.ScreenGui.TextButton.MouseButton1Click:Connect(function()       
        game.StarterGui.ScreenGui.TextButton.Text = ("Clicked")
        wait(1)
        game.StarterGui.ScreenGui.TextButton.Text = ("CLICK ME.")
end)

我是Roblox Studio编程的新手,所以我可能在犯一个简单的错误。

2 个答案:

答案 0 :(得分:1)

这里的问题是您正在Workspace下而不是StarterGui下使用脚本。

在测试游戏时,您会注意到StarterGui下的所有项目都移到了“玩家”中的玩家对象下。您需要将此脚本移动到ScreenGui内,并按如下所示引用它:

-- Parent object
local screenUI = script.Parent

screenUI.TextButton.MouseButton1Click:Connect(function()       
    screenUI.TextButton.Text = ("Clicked")
    wait(1)
    screenUI.TextButton.Text = ("CLICK ME.")
end)

答案 1 :(得分:0)

确保在TextLabelStarterPlayer或GUI内的LocalScript中执行此操作。您不能使用服务器端脚本来操作UI。您的代码应如下所示:

local button = script.Parent --This can vary depending on where the Script is located

button.MouseButton1Click:Connect(function()
    button.Text = "Clicked"
    wait(1)
    button.Text = "CLICK ME."
end)