Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to make a component invisible, without changing the location of other elements

There are two buttons: "Next" & "Back" to pass on the list. When the reached the end, the button "Next" to disappear, but the button "back" should not jump to her place. I use the setVisible (false), but the button 'Back' jump to the place of the "Next". Location manager is GridBagLayout.

like image 836
Ігар Цімошка Avatar asked Dec 27 '22 05:12

Ігар Цімошка


1 Answers

I use the setVisible (false)

Try instead setEnabled(false). It won't remove the visual representation of the button, which fixes the layout, but will make it not focusable and look different. This is the 'path of least surprise' for the typical end user.


Location manager is GridBagLayout.

BTW - if you are stuck on making the button invisible, a GridLayout would achieve the effect of retaining the positions of the other buttons.

like image 158
Andrew Thompson Avatar answered Jan 30 '23 20:01

Andrew Thompson