---------------siwuxie095

 
 

 
 

 
 

 
 

 
 

 
 

Swing 简介:

 
 

Java Swing 是 Java Foundation Classes(JFC) 的一部分,它是试图解决

AWT 缺点的一个尝试

 
 


Swing 中,Sun 开发了一个经过仔细设计的、灵活而强大的 GUI 工具包

 
 

Swing 是在 AWT 组件基础上构建的。Swing 使用了 AWT 的事件模型和支持类,

如:Colors、Images 和 Graphics

 
 

Swing 组件、布局管理器 以及 事件 比 AWT 提供的组件集更为广泛,

完全满足各种开发需求

 
 

 
 

 
 

为了克服在不同主机上行为也会不同的缺点,Swing 将对主机控件的

依赖性降至了最低

 
 

实际上,Swing 只为诸如 窗口 和 框架 之类的顶层组件使用对等体

 
 

大部分组件(JComponent 及其子类)都是使用 纯Java 代码来模拟的

 
 

这意味着
Swing 天生就可以在所有主机之间很好的进行移植

 
 

因此,Swing 通常看起来并不像是本地程序。实际上,它有很多外观,

有些模拟不同主机的外观,有些则提供了独特的外观

 
 

 
 

 
 

 
 

 
 

Swing 的优势:

 
 

Swing 对基于对等体的组件使用的术语是重量级(heavyweight),

对于模拟的组件使用的术语是轻量级(lightweight)

 
 

实际上,Swing 可以支持在一个 GUI 中混合使用重量级组件和轻量级组件,

如:在一个
JContainer 中混合使用 AWT 和 Swing 控件

 
 

 
 

除此之外,它还有以下优势:

 
 

·
基于
MVC 结构

 
 

·
可编程外观

 
 

·
呈现器与编辑器强大易用

 
 

·
支持以任意顺序构建
GUI

 
 

·
可访问性

 
 

·
支持自动销毁

 
 

·
是标准 Java 的一部分

 
 

 
 

 
 

 
 

 
 

【made by siwuxie095】

Swing简介的更多相关文章

  1. java swing简介

    java应用程序用户界面开发包 Swing是一个用于开发Java应用程序用户界面的开发工具包.它以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格.Swing开发人员只用很少 ...

  2. Java界面设计 Swing(1)

    Java界面设计的用途 开发者可以通过Java SE开发丰富并且强大的具有图形界面的桌面应用程序.也可以设计一些提高效率的工具软件,帮助自己处理机械性工作. Java 的图形界面工具包,可以用于工具类 ...

  3. SWING

    第一个图形界面应用程序.图形用户界面简称GUI(Graphical User Interface),通过GUI用户可以更好地与计算机进行交互.Swing简介Swing工具包提供了一系列丰富的GUI 组 ...

  4. 11-Java 界面设计

    (一)Java界面设计概述 1.Java 界面设计的用途 2.AWT 简介 (1)Abstract Windows Toolkit 是最原始的工具包. 3.Swing 简介 4.SWT 简介 5.如何 ...

  5. 王之泰201771010131《面向对象程序设计(java)》第十二周学习总结

    第一部分:理论知识学习部分 第10章 图形程序设计 10.1 AWT与Swing简介 1.用户界面(User Interface) 的概念:用户与计算机系统(各种程序)交互的接口2.图形用户界面(Gr ...

  6. 201771010134杨其菊《面向对象程序设计java》第十二周学习总结

    第十二周学习总结 第一部分:理论知识 内容概要: AWT与Swing简介:框架的创建:图形程序设计: 显示图像: 1.AWT组件: 2.Swing 组件层次关系 3 .AWT与Swing的关系:大部分 ...

  7. 学习笔记(三)--->《Java 8编程官方参考教程(第9版).pdf》:第十章到十二章学习笔记

    回到顶部 注:本文声明事项. 本博文整理者:刘军 本博文出自于: <Java8 编程官方参考教程>一书 声明:1:转载请标注出处.本文不得作为商业活动.若有违本之,则本人不负法律责任.违法 ...

  8. Java基础——GUI编程(四)

    继前面的,这篇主要记录菜单和文件对话框的两个小练习,来熟悉一下方法的应用,一些简单的逻辑和Swing的相关简介,以及关于GUI基础的记录. 一.创建一个菜单 import java.awt.FlowL ...

  9. 201871010123-吴丽丽《面向对象程序设计(Java)》第十二周学习总结

    201871010123-吴丽丽<面向对象程序设计(Java)>第十二周学习总结 项目 内容 这个作业属于哪个课程  https://www.cnblogs.com/nwnu-daizh/ ...

随机推荐

  1. poj 2513 欧拉图/trie

    http://poj.org/problem?id=2513 Colored Sticks Time Limit: 5000MS   Memory Limit: 128000K Total Submi ...

  2. 浅谈Vue个性化dashBoard 布局

    dashBoard布局在管理系统使用比较多:使用自己喜欢的方式进行自定义布局 使用npm 安装 npm install vue-grid-layout 全局使用 import vueGridLayou ...

  3. 关于js序列化时间的方法

    var time = new Date(); var otime = getMyDate(time); //将毫秒转换成 年月日+时分秒 格式的 (1970-01-11 00:00:00) funct ...

  4. (转) Android Fragment完全解析,关于碎片你所需知道的一切

    我们都知道,Android上的界面展示都是通过Activity实现的,Activity实在是太常用了,我相信大家都已经非常熟悉了,这里就不再赘述. 但是Activity也有它的局限性,同样的界面在手机 ...

  5. LeetCode OJ:Triangle(三角形)

    Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjacent n ...

  6. LeetCode OJ:Balanced Binary Tree(平衡二叉树)

    Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary ...

  7. linux shell 学习笔记--文件测试符

    . 文件测试操作 ---------------- 返回true 如果... -e 文件存在 -a 文件存在 这个选项的效果与-e 相同.但是它已经被弃用了,并且不鼓励使用 -f file 是一个re ...

  8. puppeteer

    const puppeteer = require('puppeteer'); (async () => { const browser = await puppeteer.launch(); ...

  9. nodejs 接口跨域

    //设置跨域访问 //设置跨域访问 app.all('*', function(req, res, next) { res.header("Access-Control-Allow-Orig ...

  10. 四、Jmeter--参数化

    一.CSV 参数化 1.我们做性能测试需要并发多个用户,为了真实模拟用户行为,我们需要模拟多个不同的用户登录,这是我们就需要进行参数化.这里我们选择比较常用的参数化方法-CSV Data Set Co ...