This site is currently in read-only mode during migration to a new platform.
You cannot post questions, answers or comments, as they would be lost during the migration otherwise.
0 votes

I want to switch the focus of a button when I press a key so that the focus entered and exited
i made this and it does not work :

func _physics_process(delta):
    if Input.is_action_just_pressed("ui_accept"):
        $Button.grab_focus() = !$Button.grab_focus()
in Engine by (196 points)

2 Answers

0 votes

grab_focus() is just a function that sets the focus on the control it's called on. So, you can't set it to a boolean value as you're attempting to do.

To set the focus on $Button, you simply need to call $Button.grab_focus(). If you need to first see if $Button already has focus, you can call $Button.has_focus().

by (22,704 points)
0 votes

try this:

func _physics_process(delta):
    if Input.is_action_just_pressed("ui_accept"):
        if $Button.has_focus():
            $Button.release_focus()
        else:
            $Button.grab_focus()
by (95 points)
Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read Frequently asked questions and How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to [email protected] with your username.