繁体   English   中英

在java中,JFrame是重量级组件还是轻量级组件?

[英]In java, JFrame is Heavy Weight Component or Light Weight Component?

我知道Swing被认为是轻量级的,因为它完全用Java实现,而不需要调用本机操作系统来绘制图形用户界面组件。

另一方面,AWT(抽象窗口工具包)是重量级工具包,因为它只是调用操作系统来生成其GUI组件。

但我听说Swing仍然基于AWT,甚至Swing组件也必须至少有一个重量级容器。 换句话说,JFrame,JApplet不是轻量级的。这是真的吗? 找出你的理由?

JFrame是重量级的,因为在大多数操作系统中创建任务视图级窗口是不可能的,而不会创建“重”的AWT窗口。 轻量级组件可以用不需要JNI调用的基于java的东西替换内部小部件,但Windows是特殊情况。 但是,JFrame确实允许您进行自定义渲染。 此外,如果你正在使用其他轻量级的东西,那么我建议使用JFrame,因为它使渲染比混合轻型和重型组件更有效。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM