I was wondering if once the player focuses on a textbox you were able to highlight all the text currently in it? I read this post but I’m wondering if there’s a feature for that now:
It is currently not a feature. You have to double click on the text.
You can, use the TextBox’s SelectionStart property as well as the CursorPosition property and everything in between will be selected.
local textBox = script.Parent
textBox.Focused:Connect(function()
textBox.SelectionStart = 1
textBox.CursorPosition = textBox.Text:len() + 1
end)
3 Likes
This only works if they click on the right side, but not the left.
Hmm, I suggest making a custom handler for that then, text boxes are pretty buggy with inputs from what I’ve experienced so you might have to create your own handler, try something like this:
local textBox = script.Parent
local isDown = false
local timeOfFocus
textBox.Focused:Connect(function()
isDown = true -- mouse button is down
timeOfFocus = tick()
textBox.SelectionStart = 1
textBox.CursorPosition = textBox.Text:len() + 1
end)
textBox.InputEnded:Connect(function(input)
if (input.UserInputType == Enum.UserInputType.Touch or input.UserInputType == Enum.UserInputType.MouseButton1) then
if isDown and tick() - timeOfFocus <= 0.5 then
textBox.SelectionStart = 1
textBox.CursorPosition = textBox.Text:len() + 1
end
isDown = false -- mouse button is no longer up
end
end)
That doesn’t seem to do anything different than your first one.
local textbox = script.Parent
textbox.Focused:Connect(function()
textbox.CursorPosition = #textbox.Text + 1
textbox.SelectionStart = 1
end)
ClearTextOnFocus
should be false ofc
3 Likes