Разница между JPanel и LayerManager - PullRequest
0 голосов
/ 13 октября 2011

Хорошо, я понимаю, что каждый JComponent может установить свое местоположение ... держу пари, JPanel, JButton, JLabel ... что угодно. Он может установить свое местоположение, используя .setLocation(x,y).

Я подозреваю, что на самом деле, когда я

JButton btn = new JButton("Click me!") ;
btn.setLocation(10,200); 

Я на самом деле меняю расположение кнопки на панели, а не в рамке. И если я сделаю

JPanel jPanel = new JPanel(); 
jPanel.setLocation(10,100); 

Я изменяю расположение jPanel не в JFrame, а в стандартном JPanel, предоставленном по умолчанию. Таким образом, JComponents могут менять свое местоположение, почему бы просто не выбросить все прямо в кровавый объект jFrame? : S

Я не пробовал, но я верю, что могу все устроить, просто используя метод setLocation(x,y), и я думаю, это будет большая боль, приклад. Это приводит к моему вопросу ... если мы можем установить расположение компонентов, используя метод, для чего предназначен LayoutManager?

Можете ли вы привести пример, чтобы показать разницу?

1 Ответ

1 голос
/ 14 октября 2011

Можете ли вы привести пример, чтобы показать разницу?

Вот пример использования макетов, а также вызов.

image

Задача состоит в том, чтобы создать изменяемую, изменяемую PLAF версию этого интерфейса с использованием setLocation() / setBounds().

Если вы (или кто-либо другой) сможете управлять им (в коде, который достаточно мал для публикации в ветке), я добавлю 500 бонусных баллов в ответ.

...