Как настроить положение JButton, если размер родительского JFrame изменен? - PullRequest
3 голосов
/ 29 января 2010

У меня есть JButton s в JFrame. Расположение JFrame является нулевым. Я дал абсолютную позицию кнопке. Но когда я минимизирую или увеличиваю фрейм, положение кнопок нарушается, как я могу динамически установить его относительно JFrame?

Ответы [ 3 ]

1 голос
/ 29 января 2010

Используйте менеджер раскладки. Это та проблема, которую они решают автоматически.

Как уже говорили другие, лучший способ справиться с этим - написать собственный менеджер абсолютных макетов. В качестве альтернативы вы можете посмотреть Явный макет , чтобы увидеть, соответствует ли он вашим потребностям. В Интернете также есть ссылки на класс AbsoluteLayout, который либо используется, либо используется для Netbeans. Возможно, вы могли бы отследить это и использовать его.

1 голос
/ 29 января 2010

Еще один вариант из учебника по Java:

http://java.sun.com/docs/books/tutorial/uiswing/layout/none.html

Я знаю, что в проекте, над которым я работал, нам нужно было сделать абсолютное позиционирование, поэтому мы фактически создали наш собственный макет (который мы назвали абсолютным макетом) и передали ему ограничения (которые мы назвали абсолютными ограничениями) .

Редактировать: Как отмечали другие, я бы порекомендовал использовать менеджер макетов, если нет веских причин для абсолютного позиционирования. GridBagLayout широко используется, и я считаю, что он лучший, если вы следуете стандартам. Java-учебник для него здесь:

http://java.sun.com/docs/books/tutorial/uiswing/layout/gridbag.html

1 голос
/ 29 января 2010

Напишите свой макет . В противном случае вы будете делать то же самое, просто с беспорядком слушателя классов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...