【问题标题】:How do I edit the Text value of a textbox? (roblox)如何编辑文本框的文本值? (机器人)
【发布时间】:2021-08-23 12:59:16
【问题描述】:

我正在 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)

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

【问题讨论】:

    标签: lua roblox


    【解决方案1】:

    您的问题可能是因为您从服务器端脚本调用.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)
    

    【讨论】:

    • 此解决方案有效,谢谢!我在 roblox studio 中将脚本制作为本地脚本,所以我从没想过它是服务器端问题
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-09
    • 1970-01-01
    • 2018-05-11
    • 1970-01-01
    • 2018-01-03
    相关资源
    最近更新 更多