2013-04-18 4 views
-2

, насколько я знаю синтаксис метода добавляемыйBorderLayout правильный синтаксис

add(Component , String); 

отл.

add(new Button("North"), BorderLayout.NORTH); 

но я видел, что синтаксис метода add в классе и он передает процесс компиляции.

add(String , Component); 

и это был метод ниже дополню:

add("North", new Button("North")); 

Может кто-нибудь объяснить мне, что здесь произошло, и если это будет работать и почему?

+0

Вы проверили API ??? – PermGenError

+0

«Если это будет работать», вы попробовали? – Aboutblank

+0

Я пытался и работал, но я не знаю, почему это сработало – user1809300

ответ

3

Показал в Java Doc, класс Контейнер 5 different add() methods overloads

В первом примере, BorderLayout.NORTH является константа, определяющая положение компонента в контейнере.

В вашем втором примере «Север» - это имя, которое вы передаете своему компоненту.

1

В способе add(Component , Object); добавлен компонент со значениями, указанными во втором параметре. Класс BorderLayout использует String экземпляры ограничений, но другие макеты используют другие типы объектов. Например, GridBagLayout использует экземпляр GridBagContraints.

Метод add(String , Component); добавляет компонент с его именем в качестве первого параметра.

Смежные вопросы