如何编辑文本框的文本值?(roblox)

我在roblox中制作了一个小游戏,使用的本地脚本在工作区内,所以这不像简单地编写local textbox = script.Parent这么容易。 我需要完整的路径来找到这个文本框。它的名称是TextBox,现在我有:

local button = script.Parent

button.ClickDetector.MouseClick:Connect(function ()
    game.Players.LocalPlayer.PlayerGui.ScreenGui.TextBox.Text = "this is a test"
end)

当我运行这段代码并点击游戏中的物体按钮时,它给我这个错误:Workspace.button.click.OnClick:4: attempt to index nil with 'PlayerGui'

点赞
用户15250066
用户15250066

你的问题可能是因为你在服务器端脚本中调用了 .MouseClick 函数,而 game.Players.LocalPlayer 只能从 LocalScript 中调用。为了获取点击 ClickDetector 的玩家,你可以进行如下操作:

local button = script.Parent

button.ClickDetector.MouseClick:Connect(function(player) --Player param gives the player (in game.Players) who clicked the Click Detector
     player.PlayerGui.ScreenGui.TextBox.Text = "this is a test"
end)
2021-06-06 14:33:06