UI 组件简介

在开始学习 Swing 之前,必须回答针对真正初学者的一个问题:什么是 UI?初学者的答案是“用户界面”。但是因为本教程的目标是要保证您不再只是个初学者,所以我们需要比这个定义更高级的定义。

所以,我再次提出这个问题:什么是 UI?您可能把它定义成您按下的按钮、打字的地址栏 、打开和关闭的窗口,等等,这些都是 UI 的元素,但是除了在屏幕上看到的这些之外,还有更多都是 UI 元素。比如鼠标、键盘、音量、屏幕颜色、使用的字体,以及一个对象相对于另一个对象的位置,这些都包含在 UI 之中。实际上,在计算机和用户的交互之中扮演角色的任何对象都是 UI 的组成部分。这看起来足够简单,但是您应当惊讶的是,有许多人和大型公司已经为它努力了很多年。实际上,现在有的大学专业的惟一课程就是研究这种交互。

Swing 的角色

Swing 是 Java 平台的 UI —— 它充当处理用户和计算机之间全部交互的软件。它实际上充当用户和计算机内部之间的中间人。Swing 到底是如何做这项工作的呢?它提供了处理前面一节中描述的 UI 各方面内容的机制:

  • 键盘:Swing 提供了捕捉用户输入的方法。
  • 颜色:Swing 提供改变在屏幕上看到的颜色的方法。
  • 打字的地址栏:Swing 提供了文本组件,处理所有普通任务。
  • 音量:Swing 不太擅长。

无论如何,Swing 为您提供了创建自己的 UI 所需要的所有工具

java swing简介相关推荐

  1. Java Swing 简介

    Java Swing 简介 Swing 是什么? Swing 是什么? Swing 是一款专门为java设计的GUI工具包.数据java类库的一部分.使用 Swing 来开发图形界面比 AWT 更加方 ...

  2. java swing图形界面开发 java.swing简介

    最近在看YouTube上面的视频的时候,虽然学着做了一点界面和一点可以运行的东西,但是里面用到的库文件我还是不明就里的.所以我打算在制作游戏之前,先花几天的时间大概地研究一下关于java.swing的 ...

  3. java象棋游戏用户特点_基于Java Swing的《中国象棋》游戏的设计与实现

    60 开发经验 3基金项目: 江西省自然科学基金资助项目(编号: 0411046); 江西省高性能计算技术重点实验室资助基金项目(No. JXHC20052003) ). 基于 Java Swing ...

  4. java swing 技术简介,javaswing开发简介

    本文介绍了利用 Java3D技术并结 合 Sw ing技术实现的 3D组件开发 ,并以石油数值模拟软件中 的应用为例体现了该组件具有的优势 . 图 1 3D 组件设计流程图 明...... Java ...

  5. Java项目:潜艇大战项目(java+swing)

    源码获取:博客首页 "资源" 里下载! 功能简介: Java swing实现的一款小游戏潜艇大战的项目源码 游戏界面: @SuppressWarnings({ "unus ...

  6. Java项目:日历万年历(java+swing)

    源码获取:博客首页 "资源" 里下载! 功能简介: 万年历 启动类: public class CalendarMainClass { public static void mai ...

  7. Java EE 简介

    Java EE 简介 Java EE 基本架构 JavaEE 的诞生是为了解决传统 C/S 架构的弊端:客户端臃肿庞大,扩展性差等弊端. JavaEE 将传统的两层结构细分为了四层. 这四层分别是:C ...

  8. java swing 组件技术(上)

    2019独角兽企业重金招聘Python工程师标准>>> 第一次写自己的博客,明知道写得很水,还是努力去写了,希望踏出第一步之后,能有着更好的发展.这几天看了一些资料,总结了一下自己所 ...

  9. 客户端是选择Java Swing还是C# Winform

    登录 | 注册 mentat的专栏 目录视图 摘要视图 订阅 [专家问答]韦玮:Python基础编程实战专题     [知识库]Swift资源大集合     [公告]博客新皮肤上线啦     快来领福 ...

最新文章

  1. New LINQ CTP!
  2. php实现简单验证码的功能
  3. linux下如何查询jdk的安装路径
  4. 超低延迟直播架构解析
  5. Linux操作系统启动流程简单介绍
  6. 注意力机制--转载自我的学生隆兴写的博客
  7. 2018年最佳深度学习书单
  8. linux判断字符串命令行,bash – 将命令行参数与字符串进行比较
  9. scala java抽象理解_scala – 抽象覆盖如何在Java代码方面起作用?
  10. 主机托管与DRaaS的真正区别原来是这样 你猜对了吗?
  11. Atitit.列表页面and条件查询的实现最佳实践(1)------设置查询条件and提交查询and返回json数据
  12. 使用 webSocket 连接菜鸟打印(并获取当前电脑连接的打印机信息)
  13. JavaScript基础语法-格式化日期年月日
  14. lbj学习日记 04 循环和选择结构的刷题心得
  15. 如何解决Unity高版本使用EasyTouch5的问题
  16. #SVN Skipped ‘xxx‘ -- Node remains in conflict 错误的解决办法#
  17. 卧槽,这个Vue调试神器牛逼!点击页面元素居然能直接打开对应组件文件…
  18. 使用Rancher的RKE快速部署Kubernetes集群
  19. 勉励自己毕业前必须做到的几件事情
  20. 行测题库:行测每日一练常识判断练习题02.04

热门文章

  1. 计算机操作系统读者和写者模型的简单介绍以及思考
  2. 成大事必备9种能力 9种手段 9种心态(图)
  3. 年买笔记本的8个小技巧 最适合自己才最好(组图)
  4. STL中map和string, vector 用法详解
  5. 利用qt和ffmpeg软件来制作视频裁剪工具
  6. 解决:Cannot read property ‘component‘ of undefined ( 即 vue-router 0.x 转化为 2.x)
  7. eclipse启动出现“An Error has Occurred. See the log file”解决方法
  8. Ubuntu下Navicat 配置
  9. 用JSmooth制作java jar文件的可运行exe文件教程【图文】
  10. 解决IE6透明PNG图片的代码