我很好奇Java实际上是如何在swing中创建JFrame的;一个窗口是如何神奇地弹出的?因此,我继续查看JFrame的源代码,最后查看了Window类的源代码。
在Window类中,有太多的事情要做,我不知道在显示窗口的初始化中有什么提示。我是一个初学者,即使它是非常高级的东西,我仍然希望看到创建窗口的实际代码。
也许我看错东西了。如果有人能给我指出正确的方向或提供链接,那就太好了。
编辑:
如果有人对我想问的问题感到困惑,假设你要创建一个像JFrame一样的窗口,但是从头开始,它将如何完成?在swing中是怎么做的?
Window(或者更正式地说是Java .awt.Window)是平台原生工具包窗口的Java API。所有现代的操作系统(无论如何都支持显示)都有一个工具包。
JFrame和Swing是在Java中提供用户界面(UI)工具包的第二次尝试,该工具包在多个操作系统上的外观和工作方式相同。java中的类。像Frame和Dialog这样的awt是第一次尝试,但是它们有原生的对等类(参见java.awt.peer -编译的C/c++代码),并且在不同的操作系统中呈现和执行非常不同。
下面发生的事情是JFrame首先从OS工具包中创建最基本的窗口,然后将其修饰(添加菜单栏,滚动条等),使其成为swing Java类本身中的JFrame或JDialog。