Java-图形界面入门,一篇就够了!

Java-图形界面入门

Java中容器,事件和组件构成了图形界面的三大要素!
首先介绍一个简单窗口的组成

  • 顶层容器
  • 菜单栏
  • 中间容器
  • 基本组件

一、容器与布局

容器类是由javax.swing包提供

  1. 顶层容器:JFrame、JApplet、JDialog、JWindow.
  2. 中间容器: JPanel、JScrollPane、JSplitPane、JDesktopPane、JToolBar.
  3. 特殊容器: 在Gul起特殊作用的中间层,如JInternalFrame、JLayeredPane、JRootPane.

使用Java语言编写GUI程序时,需要首先创建某种顶层容器,然后指定其所用的布局管理器,接着用add()方法放入创建好的各组件即可

JFrame是Swing编写GUl程序最常用的容器类,可以用来创建窗体作为顶层容器。
同样JDialog创建对话框,用JWindow创建窗口,而用JApplet创建小应用程序。

AWT
抽象窗口组件工具包,是 Java 最早的用于编写图形节目应用程序的开发包。
Swing
是为了解决 AWT 存在的问题而新开发的包,它以 AWT 为基础的。

面板
为了更好的管理组件而引入的,可以解决将所有组件都添加到窗口,对话框等提供的默认组件容器带来的一些问题!
比较易出题的点:
JFrame窗口的默认管理器是BorderLayout,最多管理5个组件!
JPanel窗口的默认顺序管理器是FlowLayout!

布局可以分为无布局,边界布局,顺序布局,网格布局,卡片布局

二、事件处理

事件是GUI程序得以高效运行的核心所在,主要用于驱动组件的动作,实现用户与系统间的交互,系统需要通过事件来响应用户的操作,常见的事件有,动作事件,焦点事件,鼠标事件和键盘事件。
事件处理的过程主要涉及事件源,事件和事件处理者
对于GUI编程来说:
事件源是事件发生的场所,通常是各个组件,如被单击的按钮。
事件是用户对界面的操作,如操作键盘时触发的键盘事件。
而事件处理者则是对收到的事件,进行处理的程序也称为监听器。
Java语言是通过授权模型来处理事件。由于同一个事件源上可能发现多个事件,为此JAVA把所有可能发生的事件分别授权给不同的监听器来处理,而让监听器时刻监听事件源上所发生的事件。一旦该事件类型与自己负责处理的类型一致, 就可马上进行处理。这样的处理实际上是把事件的处理委托给外部的处理实体进行处理,实现了事件源和监听器的分离。
编写事件处理程序的一般顺序总结分为三步:

  1. 创建某组件对象,并考虑该组件对象与那个或那些事件相关。
  2. 编写该组件对象的事件处理者类, 即实现要处理事件对应的监听器接口。
  3. 创建事件处理者类的实例,并用调用组件对象的对应该类事件的添加方法来注册监听器。

eg:创建某组件对象ActionEvent,编写该组件对象的事件处理类即监听器ActionListenter,具体实现actionPerformed方法,创建实例,调用添加方法addActionListener

三、Swing组件

Swing包含了构建图形界面的各种组件,如:窗口,标签,按钮和文本框!
为了和AWT组件区分,Swing组件在java.swing.*包下,类名均以J开头,如JFrame,JLabel,JButton等!

常见的组件:

按钮:
使用JComponent的子类的JRadioButton类创建单项选择框,为用户提供单项选择。单选按钮它只有选中和未选状态

标签:
使用JComponent的子类JLabel类创建标签,标签为用户提供信息提示。

文本组件:

  1. 文本框是由JTextField类实现的,是用来接收用户输入的单行文本
  2. 文本域是由JTextArea类实现的,该组件是由JTextFiled组件的拓展,只是支持多行文本输入
  3. 密码框是使用JComponent的子类的子类JPasswordField创建密码框,允许输入单行密码,密码框默认回显字符是“*”

列表:
使用JComponent的子类的JComboBox类来创建下拉列表,为用户提供下拉列表。

组合框:
组合框是由JComboBox类实现的,可认为是一个文本框和一个列表框的组合,供用户从下拉列表中选择某一个选项!

图形化界面是一种广为接受的人机交互,本章只是最基础也是最重要的一些点!

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值