java swing-3

本文介绍如何使用Java Swing中的JButton组件,并展示了如何为按钮注册监听器以响应用户点击事件。通过实例演示了多种监听器注册方式及其实现细节。

学习java swing的常用组件。JLabel、JButton、JTextfiled、JCheckBox、JRadioButton等。

JButton要注册监听事件,其监听器需要实现ActionListener监听接口。

package Kongjian;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class Jbutton {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Frame1 frame1=new Frame1();
		frame1.setVisible(true);
	}

}
 class Frame1 extends JFrame{
	 
	 JPanel jPanel=new JPanel();
	 JButton jButton=new JButton("按钮");
	 JLabel jlabel=new JLabel("按钮被按下0次");
	 int count =1;
	 Frame1() {
		 jPanel.add(jButton);
		 jPanel.add(jlabel);
		 add(jPanel);
		 setTitle("测试按钮和标签");
		 addWindowListener(new WindowAdapter() {//窗体关闭事件

				public void windowClosing(WindowEvent e) {
					System.exit(0);
				}
		});
	jButton.addActionListener(new ActionListener() {
		
		@Override
		public void actionPerformed(ActionEvent e) {
			// TODO Auto-generated method stub
			jlabel.setText("这是第"+(++count)+"次按下按钮");
		}
	})	;
	setSize(400, 200);
	}
	 
	 
 }

可以一个按钮注册多个监听器(后注册的监听器会先执行)。

jButton.addActionListener(new ActionListener() {//注册一个监听器
		
		@Override
		public void actionPerformed(ActionEvent e) {
			// TODO Auto-generated method stub
			string +="执行先注册的监听器";
			jlabel.setText(string);
		}
	})	;
	jButton.addActionListener(new ActionListener() {//注册一个监听器
		
		@Override
		public void actionPerformed(ActionEvent e) {
			// TODO Auto-generated method stub
			string +="执行后注册的监听器";
			jlabel.setText(string);
		}
	})	;


也可以多个按钮注册一个监听器。用getSource()方法来区分是哪个按钮触发了事件。

jButton.addActionListener(new ActionListener() {//注册一个监听器
		
		@Override
		public void actionPerformed(ActionEvent e) {
			// TODO Auto-generated method stub
			if(e.getSource()==jButton){jlabel.setText("按钮1被按下咯");
			}
			else {
				jlabel.setText("按钮2被按下");
			}
		}
	})	;


程序运行图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值