博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Swing(Java)--维基百科
阅读量:6821 次
发布时间:2019-06-26

本文共 2461 字,大约阅读时间需要 8 分钟。

Swing是一个为设计的工具包。Swing是的一部分。Swing包括了(GUI)组件如:文本框,文本域,按钮,分隔窗格和表。

Swing提供许多比更好的屏幕显示元素。它们用纯Java写成,所以同Java本身一样可以跨平台运行,这一点不像AWT。它们是JFC的一部分。它们支持可更换的面板和主题(各种操作系统默认的特有主题),然而不是真的使用原生平台提供的设备,而是仅仅在表面上模仿它们。这意味着你可以在任意平台上使用Java支持的任意面板。轻量级组件的缺点则是执行速度较慢,优点就是可以在所有平台上采用统一的行为。

Hello World程序

Swing程序

HelloWorldSwing.java

import javax.swing.*;public class HelloWorldSwing {    /**     * 创建并显示GUI。出于线程安全的考虑,     * 这个方法在事件调用线程中调用。     */    private static void createAndShowGUI() {        //Make sure we have nice window decorations.        JFrame.setDefaultLookAndFeelDecorated(true);        //Create and set up the window.        JFrame frame = new JFrame("HelloWorldSwing");        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        //Add the ubiquitous "Hello World" label.        JLabel label = new JLabel("Hello World");        frame.getContentPane().add(label);        //Display the window.        frame.pack();        frame.setVisible(true);    }    public static void main(String[] args) {        //Schedule a job for the event-dispatching thread:        //creating and showing this application's GUI.        javax.swing.SwingUtilities.invokeLater(new Runnable() {            public void run() {                createAndShowGUI();            }        });    }}

历史

互联网基础类(IFC)是最初为开发的,第一次发布于1996年12月16日。

在1997年4月2日,和网景公司宣称他们要将IFC和其他技术合并形成。作为IFC最初提供组件的附加品,Swing引进了一个机制:在不改变大量的程序代码前提下允许程序中每个组件的变化。支持可更换面板技术的引入允许Swing组件在模拟原生组件外观的同时又保持了平台独立的优点。

架构

Swing是一个基于Java的跨平台MVC框架。使用单线程模式。此框架还在代码结构层和图形渲染层之间插入了一个抽象层。

可扩展性

Swing使用了高度模块化的架构,可以通过接口的方式使用各种定制框架来扩展Swing。用户可以通过Java的继承机制重写原始的组件来实现自己的代码。

Swing是一个基于组件的框架,所有的组件都是从javax.swing.JComponent类继承来的。Swing对象通过异步方式发送事件,具有边界属性,并且会响应该组件的一系列方法。Swing组件是组件,和Java Beans组件架构完全保持一致。

可定制性

Swing提供了可编程渲染模型,使用户可以对渲染细节进行控制。一般来看,Swing组件的视觉效果是一些通用元素的组合,比如外框、边距、窗口装饰等等。典型的情况是,用户通过编写代码,指定边框、颜色、背景、透明度等属性来定制一种通用Swing组件(如JTable)。核心组件则会用这些定制的属性来进行绘制。此外,也完全可以制作出非常特殊的GUI控件或是高度自定义的视觉效果。

转载地址:http://wbozl.baihongyu.com/

你可能感兴趣的文章