Может ли SpringLayout сделать всю работу
Я хотел бы спросить, если SpringLayout
может сделать что-то вроде абсолютной позиции, потому что я думаю, что абсолютная позиция имеет проблемы, когда я максимизирую кадр, и что мне нужно использовать, если мне нужно установить JMenu
а также JToolBar
а также JTextField
а также JTable
все в одной строке по порядку?
Я пытался использовать Borderlayout
но это дает мне очень большой JTextField
, Я старался Gridlayout
это дает также большой JTextField
Мне нужно это большое, но не такое большое, как кажется.
3 ответа
может SpringLayout сделать всю работу
Нет. Он не предназначен и не предназначен для выполнения "всей работы".
Графические интерфейсы Java, возможно, должны работать на нескольких платформах, на разных разрешениях экрана и с использованием разных PLAF. Как таковые, они не способствуют точному размещению компонентов. Чтобы организовать компоненты для надежного графического интерфейса, вместо этого используйте менеджеры компоновки или их комбинации1, а также отступы и границы макета для пробелов2.
Для абсолютного позиционирования вообще не используйте менеджер макетов.
Тем не менее, это не очень рекомендуется. Обычно вы должны использовать макет, который будет масштабироваться.
Смотрите также эту тему для дальнейшего обсуждения.
Я нашел записку от java говорит
Примечание. Этот урок посвящен написанию кода макета вручную, что может быть непросто. Если вы не заинтересованы в изучении всех деталей управления компоновкой, вы можете использовать менеджер компоновки GroupLayout в сочетании с инструментом компоновщика для создания вашего графического интерфейса. Одним из таких инструментов является среда IDE NetBeans. В противном случае, если вы хотите написать код вручную и не хотите использовать GroupLayout, то GridBagLayout рекомендуется в качестве следующего наиболее гибкого и мощного менеджера компоновки