Я всегда был немного размытым по разнице между стеклянным стеклом и многослойной панелью. Является ли стеклянное стекло по существу просто «самым верхним слоем корневой панели» или ведет себя по-другому? Когда вы будете использовать слоистую панель вместо стекла?Вариант использования стеклянной панели или слоистой панели
ответ
Это две разные вещи:
слоистой панели является назначение всех содержимого, которые добавляются или показанных внутри
JFrame
. Например, каждый нормальный компонент, такой какJLabels
,JTextFields
,JTable
и т. Д. Кроме того, он принудительно обрабатывает z-порядок элементов, которые добавляются к нему, чтобы он мог обрабатывать всплывающие меню или эффекты перетаскивания: это, потому что всплывающее меню добавлено к слоистой панели с az, превышающей нормальные компоненты, причем конечный эффект остается поверх других вещей. См. here, чтобы лучше понять поведение.панель стекол является дополнительным слоем, который скрыт по умолчанию и остается в любом случае на верхней панели в слоя. Таким образом, в основном все, что вы рисуете на стеклянном стекле, всегда будет видно: вы можете думать о нем как о прозрачном листе, который применяется на верхней части обычного
JFrame
, который вы можете использовать для использования специальных эффектов.
Оба слоистой панели и панель стекла размещены на корневой панели, что является основой, из которой каждый кадр строится.