Swing代码如何变成真正的图形应用程序

hk0*_*007 5 java graphics swing

这个问题可能看起来不太技术性,但出于好奇,我想知道:

我编写的裸/原始Swing代码如何变成一个精彩的图形应用程序?

例如:

  • 就像我们使JFrame可见,或者当我们在其上放置JButton时.谁让它发生?操作系统或Java或JVM.

  • 谁让颜色出现?

  • 幕后的过程是什么?

我问这可能是因为这是我生命中的第一次,我制作了一个RealWorld图形应用程序,这些问题在我的脑海中浮现!

提前致谢!

Jac*_*nds 5

在Swing中,所有GUI组件都完全用Java编写,并使用Java进行渲染.例如,JButtons将由Java绘制,而不是由任何内部操作系统绘制.因此,Swing组件被称为"轻量级组件",因为它们由Java而不是OS(或任何本机小部件工具包)管理和呈现.

请注意,Java还有一个名为AWT的工具包.Swing基于来自AWT的嵌套和继承方法,除了它使用操作系统创建本机小部件.

所以在某些时候,Sw​​ing必须在屏幕上创建一个窗口并在其上绘制.实际创建窗口的魔力由AWT处理.请注意,JFrame从中扩展java.awt.Frame意味着虽然JFrame可能主要由Java呈现,但它由重量级的本机OS窗口支持.