5.1 用AWT生成图形化用户界面

抽象窗口工具包AWT (Abstract Window Toolkit) 是 API为Java 程序提供的建立图形用户界面GUI (Graphics User Interface)工具集,AWT可用于Java的applet和applications中。它支持图形用户界面编程的功能包括: 用户界面组件;事件处理模型;图形和图像工具,包括形状、颜色和字体类;布局管理器,可以进行灵活的窗口布局而与特定窗口的尺寸和屏幕分辨率无关;数据传送类,可以通过本地平台的剪贴板来进行剪切和粘贴。

5.1.1 java.awt包

java.awt包中提供了GUI设计所使用的类和接口,可从图5.1中看到主要类之间的关系。

java.awt包提供了基本的java程序的GUI设计工具。主要包括下述三个概念:

组件--Component

容器--Container

布局管理器--LayoutManager

5.1.2 组件和容器

Java的图形用户界面的最基本组成部分是组件(Component),组件是一个可以以图形化的方式显示在屏幕上并能与用户进行交互的对象,例如一个按钮,一个标签等。组件不能独立地显示出来,必须将组件放在一定的容器中才可以显示出来。

类java.awt.Component是许多组件类的父类,Component类中封装了组件通用的方法和属性,如图形的组件对象、大小、显示位置、前景色和背景色、边界、可见性等,因此许多组件类也就继承了Component类的成员方法和成员变量,相应的成员方法包括:

getComponentAt(int x, int y)

getFont()

getForeground()

getName()

getSize()

paint(Graphics g)

repaint()

update()

setVisible(boolean b)

setSize(Dimension d)

setName(String name)等

容器(Container)也是一个类,实际上是Component的子类,因此容器本身也是一个组件,具有组件的所有性质,但是它的主要功能是容纳其它组件和容器。

布局管理器(LayoutManager):每个容器都有一个布局管理器,当容器需要对某个组件进行定位或判断其大小尺寸时,就会调用其对应的布局管理器。

为了使我们生成的图形用户界面具有良好的平台无关性,Java语言中,提供了布局管理器这个工具来管理组件在容器中的布局,而不使用直接设置组件位置和大小的方式。

在程序中安排组件的位置和大小时,应该注意以下两点:

1.容器中的布局管理器负责各个组件的大小和位置,因此用户无法在这种情况下设置组件的这些属性。如果试图使用Java 语言提供的setLocation(),setSize(),setBounds() 等方法,则都会被布局管理器覆盖。

2.如果用户确实需要亲自设置组件大小或位置,则应取消该容器的布局管理器,方法为:

setLayout(null);

5.1.3 常用容器

容器java.awt.Container是Component的子类,一个容器可以容纳多个组件,并使它们成为一个整体。容器可以简化图形化界面的设计,以整体结构来布置界面。所有的容器都可以通过add()方法向容器中添加组件。

有三种类型的容器:Window、Panel、ScrollPane,常用的有Panel, Frame, Applet。

1.Frame

JAVA教程第五讲AWT图形用户界面设计.doc

下载Word文档到电脑,方便收藏和打印[全文共1312字]

编辑推荐:

下载Word文档

java awt 教程_JAVA教程第五讲AWT图形用户界面设计相关推荐

  1. java用户界面设计教程_Java图形用户界面设计(Swing)的介绍

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

  2. java窗口上 显示学号和姓名_java编程 完成下图所示的图形用户界面设计,要求在界面中输入个人的班级、学号、姓名信息后,点击“...

    满意答案 wgbsourpuss 推荐于 2017.10.12 采纳率:57%    等级:9 已帮助:1414人 基本功能已经实现,望采纳import java.awt.Button; import ...

  3. matlab设计菜单教程,MATLAB程序设计教程(11)——MATLAB图形用户界面设计

    MATLAB程序设计教程(11)--MATLAB图形用户界面设计 第11章  MATLAB图形用户界面设计 11.1  菜单设计 11.2  对话框设计 11.3  图形用户界面设计工具 11.1菜单 ...

  4. Python图形用户界面设计-Delphi For Python高级开发教程

    目录 简介........................................................................ 5 谁应该阅读这本教程........... ...

  5. matlab对话框设计,MATLAB程序设计教程(11)——MATLAB图形用户界面设计

    MATLAB程序设计教程(11)--MATLAB图形用户界面设计 第11章  MATLAB图形用户界面设计 11.1  菜单设计 11.2  对话框设计 11.3  图形用户界面设计工具 11.1菜单 ...

  6. java界面设计素材_9.java图形用户界面设计.ppt

    9.java图形用户界面设计.ppt 还剩 150页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,很抱歉,此页已超出免费预览范围啦! 如果喜欢就下载吧,价低环保! 内容要点: 151v 程 ...

  7. Java图形用户界面设计音乐播放器

    Java图形用户界面设计音乐播放器 设计思路 音乐播放器的基础是可以播放音乐,所以要有一个实现播放音乐功能的类audioplay,图形界面就是通过动作调用audioplay里面的函数.关于实现播放器图 ...

  8. java上机实验学习笔记————实验七 图形用户界面设计

    java上机实验学习笔记----实验七 图形用户界面设计 题一: 计算器程序雏形 该窗口模拟Windows的计算器功能,添加一个文本行和4个按钮,单击[1].[2].[+]按钮时,将按钮的标签添加到文 ...

  9. Java图形用户界面设计之概述

    文章目录 前言 一.GUI概述 1.创建 GUI 的一般步骤: (1)Component类 (2)Container类 (3)Window类 (4)Frame 类 例:建立一个Frame对象,并使之可 ...

  10. Java语言程序设计----- 图形用户界面设计

    Java语言程序设计----- 图形用户界面设计 1.实验目的 (1)掌握Java Swing组件的使用方法. (2)理解委托事件处理模型. (3)设计具有图形用户界面的.能够响应事件的Java应用程 ...

最新文章

  1. php获取日期中的月份,年份
  2. .NET Core程序瘦身器发布,压缩程序尺寸到1/3
  3. 如何允许用户自定义UI
  4. 【误区】技术部经理vs技术经理 —— 一字之差谬以千里
  5. MongoDB学习之在Windows下安装MongoDB
  6. VoIP:难以抵挡的灰色诱惑
  7. Java 技术体系(JDK 与 JRE 的关系)、POJO 与 JavaBeans
  8. 有关编辑距离计算的一点整理。
  9. 部署VC2008的程序
  10. coreseek java_使用python测试sphinx(coreseek)做全文索引
  11. 30套精选程序员个人简历模板.zip
  12. 利用MATLAB对乐曲进行钢琴演奏【matlab调音_1】
  13. wpa_supplicant详解
  14. 输入一个字符串,输出该字符串中字符的所有组合。(腾讯2014笔试附加题)
  15. 安卓-恢复模式--Recovery
  16. UML类图属性和相关关系
  17. IP地址段与子网掩码
  18. vue 视频播放插件vue-video-player自定义样式、自动播放设置、设置一开始全屏播放视频
  19. 黑客也看《人民的名义》:把手机卡扔马桶有 bug
  20. 几何原本译林pdf下载_《几何原本》欧几里得_文字版_pdf电子书下载

热门文章

  1. 批处理禁用U盘,光驱,用户添加到组,盘符添加权限
  2. Android Key Hash的生成
  3. java 数据透视表 组件_Apache POI如何将工作簿样式应用于所有数据透视表 . 我如何排除床单?...
  4. logback.xml日志配置文件,springboot
  5. php跟python效率_python为何效率慢点?PHP跟Python的解释器都是C写的,PHP为什么能快点?...
  6. python属于面向对象的还是面向过程的呀-面向过程和面向对象的理解
  7. 无线WIFI上网监控串联部署方案
  8. 刚才调试了个mysql中文乱码的问题
  9. Error occurred during initialization of VM Could not reserve enough space for object heap
  10. RH124 Chapter 2 Managing Files From the Command Line