Начиная с Java 5, нет никакой разницы между вашими примерами кода. JFrame#add
теперь перенаправлен на JFrame#getContentPane
от вашего имени.
До Java 5 он генерировал исключение, что означало, что вам приходилось добавлять компоненты непосредственно в панель содержимого.
JRootPane
используется для создания легкого контейнера, в который могут быть добавлены другие компоненты Swing. Что еще более важно, он предоставляет средства, с помощью которых могут организовываться контейнеры Swing верхнего уровня.
JRootPane
состоит из слоев. Внизу находится JMenuBar
и панель содержимого, а над ней - стеклянная панель.
Благодаря своей конструкции JRootPane
может иметь несколько дополнительных слоев (обычно между панелью содержимого и стеклянной панелью), это обычно используется для таких вещей, как всплывающие окна.
Стеклянная панель действует как наложение, которое можно использовать для визуализации контента поверх всего остального (а также для блокировки событий мыши и клавиатуры).
Взгляните на Как использовать корневые панели.
Обычно, кроме панели содержимого и стеклянной панели, вы обычно не используете какие-либо другие части корневой панели.
Вы также можете взглянуть на this для быстрого примера использования стеклянной панели.
person
MadProgrammer
schedule
12.04.2013