какая польза от рамы, панели или панели в качелях? - PullRequest
10 голосов
/ 18 декабря 2010

Я читал, что JFrame состоит из нескольких панелей. Что такое панели и почему Jframe состоит из панелей?И почему существует JPanel, в то время как кажется, что JFrame выглядит точно так же, как JPanel, но с панелью меню и кнопкой закрытия, так зачем нужен JPanel?Кто-нибудь может объяснить мне четко определение и использование этих трех компонентов?

1 Ответ

18 голосов
/ 18 декабря 2010

Существуют контейнеры верхнего уровня, такие как JFrame. Они могут служить основным окном, в котором построен графический интерфейс.

Тогда есть контейнеры промежуточного уровня. Они должны быть помещены в другие контейнеры, они не могут существовать сами по себе. Они либо помогают вам организовать компоненты, либо добавляют функциональность. JPanel - это очень простой контейнер, который помогает вам организовать другие компоненты. В то время как JSplitPane добавляет функциональность, имея две панели переменного размера.

Если у вас сложный графический интерфейс, вы можете использовать JPanels для организации различных областей вашего графического интерфейса, а затем добавить каждую панель в свой JFrame.

В Java Swing API использует Composite Design Pattern . Это означает, что вы можете составлять очень сложные объекты из других объектов и при этом обрабатывать составные объекты так же, как и простые объекты. Таким образом, вы можете поместить JPanel в JPanel, и он по-прежнему будет вести себя как JPanel.

Думайте об этом, как орудие для снастей (или набор для шитья). Он сделан из большого контейнера. Но вместо того, чтобы помещать много маленьких предметов в этот большой контейнер и затруднять управление им позже, вы можете поместить несколько небольших отделений в большую коробку. Затем крючки и грузила уходят в отсеки. Это проще в управлении. Большая коробка - это JFrame, а отсеки - JPanels.

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