与其他任何Java程序一样,每个swing程序都以main方法开头。main方法由主线程启动。但是,需要在事件分发线程(或简称为EDT)上创建和更新Swing组件。为了说明主线程和EDT之间的动态关系,请看一下“ Hello World”!例。
主线程仅用于将窗口的创建委托给EDT。如果EDT尚未启动,则第一个调用SwingUtilities.invokeLater将建立用于处理Swing组件的必要基础结构。此外,EDT在后台仍处于活动状态。在启动EDT设置后,主线程将直接终止,但是EDT将保持活动状态,直到用户退出程序为止。这可以通过单击可见JFrame实例上的关闭框来实现。这将关闭EDT,程序的过程将完全结束。