前言

简单总结一下图形用户界面(Graphical User Interface)的相关基础,如GUI的基本元素:窗口,以及介绍Java中的图形界面开发设计的技术。

图形用户界面

图形用户界面就是以图形的方式显示可以操作计算机的用户界面,这是与早期计算机才产生时,在终端(黑框框)中输入命令操作计算机时相对立的。

使用图形界面对于大多数普通用户来说是非常便利的,可以简单使用鼠标点击进行操作等。

构成图形界面的最基本元素就是窗口,在窗口周围还会有菜单、图标等组件。

Java中的图形界面开发

Java图形界面编程初期是Applet,嵌入到html网页中的Java程序(对于Applet不太熟悉不多介绍)。Applet后期逐渐被抛弃主要在于客户端要运行Applet程序就需要安装JRE(Java运行环境)并且要配置正确,JRE本身可能也会有漏洞存在被攻击的风险,以及浏览器对Applet程序支持方面也可能会存在问题。

后面继续出现了初级Java图形界面AWT(Abstract Window Toolkit 抽象视图工具组 )和高级Java图形界面Swing。AWT随着JDK1.0一起发布,提供了一套最基本的GUI类库,具有最基本的窗口、按钮和文本框等,以及所有AWT组件都在java.awt包中。AWT的问题在于:界面太丑、功能有限、组件有限等。
然后出现Swing,Swing代替了AWT组件,但是使用AWT作为基础。Swing中的大部分布局管理器与AWT中相同,Swing中的事件处理机制还是基于AWT。

AWT中的体系结构

AWT的体系结构图

Swing中的组件命名规则一般类名都为JXXX

Component称为组件,用来表示用户图形界面上的各种组成元素:按钮、文本框等

Container称为容器,可以装载其他的Component

Frame是图形用户界面的窗口主类,用于在用户桌面上显示一个应用程序窗口。使用Frame是需要注意:初始化时不可见,需要调用setVisible(true)方法才可以显示;Frame默认就有窗口对于的对于的按钮,但是其关闭按钮默认无效。

Panel是AWT中最常用的容器,用于组织其他Component的放置和便于定位。使用Panel需要注意:Panel不可以独立存在,必须放在Window或者Frame中;Panel可以和布局管理器组合使用实现强大的界面布局

ScrollPane是一种特殊的Panel,它与Panel的区别主要在于它拥有滚动条。需要注意:ScrollPane也是不能独立存在,需要放在顶层容器内部;可以装载其他容器,当其他容器大于ScrollPane本身的话,ScrollPane就会自动产生滚动条;当然设置滚动条一直显示或者一直不显示

其他的一些组件可以查看API进行使用,再此就不多说

小结

以上简单介绍了图形界面(简单的笔记),以及Java图形界面编程需要理解的概念。实战中才会更加深入理解这些概念,与此同时API文档也少不了。后面将继续介绍布局管理器和事件处理。

【Swing】图形用户界面基础的更多相关文章

  1. Swing图形用户界面

    package test; import java.awt.event.ActionEvent;import java.awt.event.ActionListener; import javax.s ...

  2. Java基础学习总结 -- 图形用户界面GUI

    虽然目前Java算不上前端开发的主力,但是作为Java入门基础的一部分,学习Java的GUI编程还是有必要的,而且可以做出一些小且有趣的图形程序来提高学习热情.本篇学习总结均为一个Beginner的笔 ...

  3. 黑马程序员——【Java基础】——GUI(图形用户界面)

    ---------- android培训.java培训.期待与您交流! ---------- 一.概述 1.GUI(GraphicalUser Interface):又称图形用户界面,是计算机用户与计 ...

  4. python基础课程_2学习笔记3:图形用户界面

    图形用户界面 丰富的平台 写作Python GUI程序前,须要决定使用哪个GUI平台. 简单来说,平台是图形组件的一个特定集合.能够通过叫做GUI工具包的给定Python模块进行訪问. 工具包 描写叙 ...

  5. 图形用户界面入门:EasyGui - 零基础入门学习Python035

    图形用户界面入门:EasyGui 让编程改变世界 Change the world by program 今天我们来谈谈图形用户界面编程,也就是我们常说的GUI(Graphical User Inte ...

  6. java-GUI图形用户界面

    图形用户界面GUI(Graphical User Interface),指的是在一个程序中用户可以看到的和与之交互的部分. JavaAPI中提供两套组件用于支持编写用户界面AWT  and  Swin ...

  7. I/O系统,多线程、图形用户界面编程

    多线程 进程与线程区别: 进程需要分配独立的内存空间:线程在同一内存空间中工作,可以共享同一块内存和系统资源 与Java相关的API: 1)Thread类 方法:start()启动: urn() : ...

  8. 图形用户界面(graphical user interface)

    1 java中提供的类库 1.1 定义 AWT(abstract windows toolkit)抽象窗口工具包:提供了与本地图形界面进行交互的接口,AWT中提供的图形函数与操作系统的图形函数有着对应 ...

  9. 黑马程序员_<<GUI(图形用户界面)--------1>>

    --------------------ASP.Net+Android+IOS开发..Net培训.期待与您交流! -------------------- 1.  GUI图形用户界面 1.简述 Gra ...

随机推荐

  1. 【HANA系列】SAP HANA SQL去除字符串空格

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA SQL去除字符 ...

  2. curl and wget

    写在前面: a.  对比curl 和 wget 的相同和不同点 来记忆 a-1 curl url  直接将请求内容输出到标准输出. 如果下载不是瞬时间完成,会显示下载进度条,如果向取消,加-s : w ...

  3. 【计算机】hosts设置

    2015 Google hosts 持续更新[更新于:2016-02-12] 老D 9个月前 (06-23) hosts 248,284  暂无评论 12798 文章目录[ 隐藏 ] 修改hosts的 ...

  4. 如何限制nginx的响应速率

    参考官方地址:http://nginx.org/en/docs/http/ngx_http_core_module.html#variables 用$limit_rate内置的变量可以限制nginx的 ...

  5. linux系统下安装python3及其配置

    Linux下安装Python3.6和第三方库 linux一般自带python2,不要动它,使用python3运行python脚本就好,部分linux系统命令依赖目前的python2环境, 比如yum! ...

  6. 强大的strace命令用法详解

    文章转自: https://www.linuxidc.com/Linux/2018-01/150654.htm strace是什么? 按照strace官网的描述, strace是一个可用于诊断.调试和 ...

  7. delphi 相关好的资料网站

    1.Delphi编程技巧大全   http://www.delphitop.com/  (实例讲解所有组件) 2.Delphi学习大师  Delphi基础教程 视频教程  http://www.xue ...

  8. 【LOJ】#2983. 「WC2019」数树

    LOJ2983. 「WC2019」数树 task0 有\(i\)条边一样答案就是\(y^{n - i}\) task1 这里有个避免容斥的方法,如果有\(i\)条边重复我们要算的是\(y^{n - i ...

  9. Servlet简单例子

    一.项目结构 二.index.jsp <%@ page contentType="text/html; charset=utf-8" %> <html> & ...

  10. 编译错误ERROR C2027

    一个工程编译时出错! 费了很多时间,增加头文件都不可取,然后把source File文件下分的.cpp文件删除,然后编译通过.