java – Glass Pane vs. Layered Pane的使用案例
作者:互联网
我对玻璃窗格和分层窗格之间的区别总是有点模糊.玻璃窗格基本上只是“根窗格的最顶层”,还是表现不同?您何时使用分层窗格而不是玻璃窗格?
解决方法:
他们是两个不同的东西:
>分层窗格是在JFrame中添加或显示的所有内容的目标.例如,每个普通组件,如JLabels,JTextFields,JTable等.此外,它还隐含地处理添加到其中的元素的z排序,以便它可以处理弹出菜单或拖放效果:这是因为添加了一个弹出菜单到az高于正常组件的分层窗格,最终效果保持在其他东西之上.请参阅here以更好地了解行为.
>玻璃窗格是一个可选图层,默认情况下是隐藏的,并且在任何情况下都保留在图层窗格的顶部.因此,基本上您在玻璃窗格上绘制的所有内容都将始终可见:您可以将其视为应用于普通JFrame顶部的trasparent工作表,您可以选择使用它需要特殊效果.
分层窗格和玻璃窗格都放置在根窗格上,根窗格是构建每个框架的基础.
标签:java,swing,glasspane,jlayeredpane 来源: https://codeday.me/bug/20190610/1213584.html