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

标签 java swing graphics

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

我编写的裸/原始 Swing 代码如何变成出色的图形应用程序?

例如:

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

  • 谁让颜色出现?

  • 幕后的过程是怎样的?

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

提前致谢!

最佳答案

在 Swing 中,所有 GUI 组件都完全用 Java 编写,并使用 Java 呈现。例如,JButtons 将由 Java 而不是任何内部操作系统的东西绘制。因此,Swing 组件被称为“轻量级组件”,因为它们由 Java 而不是操作系统(或任何 native 小部件工具包)管理和呈现。

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

所以在某些时候,Sw​​ing 将不得不在屏幕上创建一个窗口并在其上绘图。实际创建窗口的魔法由 AWT 处理。注意 JFramejava.awt.Frame 延伸这意味着尽管 JFrame 可能主要由 Java 呈现,但它由重量级 native 操作系统窗口支持。

关于java - 一段Swing代码如何变成真正的图形应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11127563/

相关文章:

java - 如何在 Multi-Tenancy 架构中维护 session 属性?

java - Java Panel有时不会完全更新

java - 如何使用矩形之间的相交进行碰撞检查?

java - 如何在 Eclipse 中下载或链接 OpenCV Javadoc

java - 在无限循环中执行事件

javax.mail.NoSuchProviderException : No provider for SMTP error while running spring application using Intellij

java - 在 Swing 事件监听器中阻止调用

java - 如何将 BufferedImage 绘制到 JFrame 上

swift - 如何在swift中将圆圈变成一条线?

linux - 如何开发 Gnome 工具栏图形小部件?