The Godot Q&A is currently undergoing maintenance!

Your ability to ask and answer questions is temporarily disabled. You can browse existing threads in read-only mode.

We are working on bringing this community platform back to its full functionality, stay tuned for updates. | Twitter

+1 vote

They always pop up below (or above) the button, and I want to try to change it to appear on the left, right, or fixed position of the button (such as the center of the screen).
I can use the GetPopup() method to get the button's subitem popup menu, but changing its position doesn't work.

Godot version v4.1.stable.mono.official [970459615]
in Engine by (19 points)

1 Answer

0 votes

This seems to work for me...

func _on_menu_button_pressed():
    var popup = $MenuButton.get_popup()
    popup.position = Vector2i(100,100)

(wired to the menu button's pressed event). That same code does not, however, work from the _ready() function - which is what I tried first. Presumably, because the auto-calculated position is set at some point during the interaction phase...

by (22,674 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.