上课没认真听,下课不好好写。
关于GUI,首先了解了一下什么是GUI:
GUI(Graphical User Interface),图形用户界面。采用图形方式显示的计算机操作用户接口。与早期计算机使用的命令行界面相比,图形界面对于用户来说在视觉上更容易接受。GUI和CLI(命令行界面)最大的不同是,GUI引入鼠标作为输入源(后期又以触屏为输入),这使得GUI的交互成为可能。
其次了解,图形化界面GUI实现的几个重要组件
1.JFrame 是容器类
Java的GUI程序的基本思路是以JFrame为基础,他是屏幕上windows的对象,能够最大化,最小化,关闭。
JFrame是一个顶层的框架类,好比一个窗户的框子,这个框子可以嵌入多个玻璃窗
1、构造窗体对象
2、设置窗体外观属性
3、设置窗体可见
对JFrame添加组件有两种方式:
1、用getContentPane()方法获得JFrame的内容面板,再对其加入组件:frame.getContentPane().add(childComponent)
2、建立一个Jpanel或JDesktopPane之类的中间容器,把组件添加到容器中,用setContentPane()方法把该容器置为JFrame的内容面板
JPanel contentPane=new JPanel();//把其它组件添加到Jpanel中; frame.setContentPane(contentPane);//把contentPane对象设置成为frame的内容面板
常用方法
void add(Component):添加组件。 void add(Component,int):添加组件至索引指定位置。 void add(Component,Object):按照指定布局限制添加组件。 void add(Component,Object,int):按照指定布局管理器限制添加组件到指定位置。 void remove(Component):移除组件。 void remove(int):移除指定位置的组件。 void removeAll():移除所有组件。 void paintComponent(Graphics):绘制组件。`` void repaint():重新绘制。 void setPreferredSize(Dimension):设置组件尺寸。 Dimension getPreferredSize():获取最佳尺寸。
2.AWT 是抽象窗口组件工具包,是 Java 最早的用于编写图形节目应用程序的开发包。
AWT是用来处理图形最基本的方式,AWT包提供:
1、图形界面组件:窗口,按钮,菜单等
2、容器:实现组件管理,布局管理
3、布局管理器:用来安排图形界面组件的位置
4、Graphics:在组件上进行图像绘制所使用的图形环境的父类
事件处理对象:用来处理图形界面组件所触发的事件
//引入AWT包中的所有类 import java.awt.*;
3.Swing 是为了解决 AWT 存在的问题而新开发的包,它以 AWT 为基础的。
AWT的起初设想就是为了统一实现不同操作系统的图像界面,但问题是,不同操作系统图形库的功能可能不一样,在一个平台上存在的功能在另外一个平台上则可能不存在,为此AWT不得不通过牺牲功能来实现平台无关性。
不仅如此,AWT还是一个重量级组件,使用比较麻烦,且设计出的图形界面不够美观功能也非常有限。为此,Sun公司对AWT进行改进,提出了Swing组件,提供了更加丰富的组件和功能,来满足GUI设计的一切需求。
Swing是JAVA基础类的一部分,包括了图形用户器件:文本框、按钮、分割窗格、表。需要注意的是,Swing并不是AWT的替代品,而是在原有的AWT的基础上进行了补充和改进。
三者之间的关系
JFrame、AWT(Abstract Window Toolkit)和Swing都是与Java图形用户界面(GUI)编程相关的概念和工具。
-
AWT(Abstract Window Toolkit):
- AWT是Java最早的GUI工具包,提供了一组与平台相关的类,用于创建和管理GUI组件,如窗口、按钮、文本框等。
- AWT的组件是对底层操作系统窗口的简单封装,因此它们的外观和感觉取决于底层操作系统。
-
Swing:
- Swing是在AWT之上构建的一套GUI工具包,提供了更丰富、更灵活、更独立于平台的组件。
- Swing组件是由Java代码实现的,而不是直接使用底层操作系统的GUI组件。这使得Swing应用程序在不同平台上具有更一致的外观和感觉。
-
JFrame:
- JFrame是Swing库中的一个类,它是一个顶级容器,用于创建窗口。
- JFrame继承自AWT的Frame类,但它提供了更多的功能和更丰富的选项,使得窗口的创建和管理变得更加灵活和方便。
在关系上:
- AWT是Java的最初的GUI工具包,提供了一些基本的GUI组件。
- Swing是建立在AWT之上的,提供了更丰富和独立于平台的GUI组件。
- JFrame是Swing库中用于创建窗口的一个类,它扩展了AWT的Frame类。因此,JFrame可以看作是Swing中用于创建窗口的一种工具。
标签:简要,GUI,AWT,JFrame,Swing,组件,void,算题 From: https://www.cnblogs.com/gbrr/p/17836408.html