HeadFirstJava学习心得——javaGUI编程

本文介绍了如何使用Java Swing库中的FlowLayout布局管理器创建GUI窗口。通过示例代码展示了如何设置布局,添加按钮,并使窗口可见。重点在于理解如何将组件添加到窗口以及布局管理器的工作原理。
摘要由CSDN通过智能技术生成

一切都从window开始:

JFrame是一个代表屏幕上window的对象。你可以把button、checkbox、text字段等接口放在window上面。标准的menu也可以放在上面,并且能够带最小化、最大化、关闭等图标。JFrame的长相会根据所处的平台不同而有所区别。

将组建加到window上:

一旦创建出JFrame后,你就可以把组件(widget)加到上面。有很多的swing可以使用,它们在javax.swing这个包之中。最常用的组件包括:JButton、JRadioButton、JCheckBox、JLabel、JList、JScrollPane、JSlider、JTextArea、JTextField和JTable等。大部分都是很容易使用的,但是像JTable就有一点小复杂了。


创建一个GUI的app需要4个步骤:
1.创建frame;
2.创建widget;
3.将widget加入到frame;
4.显示出来。
见以下的demo:
import javax.swing.JButton;
import javax.swing.JFrame;

public class GUIDemo01 {

	public static void main(String[] args) {
		// 1.创建Frame
		JFrame frame = new JFrame();
		// 2.创建widget
		JButton button = new JButton("有种就点击我!");
		// 3.把widget添加到frame上
			/*组件不会直接加到frame上,你可以把frame想象成window的框,
			 * 组件是加到window的pane上面
			 */
		frame.getContentPane().add(button); 
		// 4.显示出来
		frame.setSize(300, 300);
		frame.setVisible(true);
	}

}
以上程序的效果:
如果在上述程序中加入这样的代码:
frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
则无论用户怎么点击(除非用taskmgr强制关闭,否则怎么关闭都关不掉,我想有些流氓软件大致就是采用的这种思路吧)。

如果你想要实现用户点击按钮的时候,按钮中的文字改变 ,就需要实现一个监听器:

如果想要知道按钮的事件,就会监听事件的接口

监听接口是介于监听(你)与事件源(按钮)之间的桥梁。swing的GUI组件是事件源。以java术语来说:事件源是可以将用户的操作装换成事件的对象。对java而言,事件几乎都是以对象类表示。它会是某种事件类的对象。如果你查询API中的java.awt.evet这个包,你就会看到一组事件的类(名称中有Event)。你会看到MouseEvent、KeyEvent、WindowEvent、ActionEvent等等。
事件源(例如:按钮)会在用户做出相关动作的时候(按下按钮)产生事件对象。你的程序在大多数情况下是事件的接收方而不是创建方。也就是说:你会花较多的时间当监听者而不是时间的来源。
每个事件类型都有相应的监听者接口。要想接收MouseEvent的话就要实现MouseListener接口。想要WindowEvent么?实现WindowListener。


监听:

如果类想要知道按钮的ActionEvent,就得实现ActionListener这个接口。按钮需要知道你关注的部分,因此要通过调用addActio
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值