//swing实现简单的窗口点击事件,点击效果为显示当前时间 //Create by Lee_1310 on2019.3.21 16:57 //Reprint indicating source:https://blog.csdn.net/Lee_1310 package SwingDemo; import java.awt.Color; import java.awt.Container; import java.awt.FlowLayout; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; public class SwingDemo { private static void createGUI() //初始化窗口程序 myFrame frame = new myFrame("Lee");//窗口命名 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //frame.setBackground(Color.red);//暂时没用 frame.setSize(500,350); frame.setVisible(true); public static void main(String[] args) // TODO Auto-generated method stub javax.swing.SwingUtilities.invokeLater(new Runnable() { public void run() createGUI();

以下是个人的myFrame

package SwingDemo;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class myFrame extends JFrame{
	JButton button = new JButton("显示时间");
	JLabel timeLabel= new JLabel("00:00:00");
	public myFrame(String title)
		super(title);
		Container contentPane = getContentPane();
		contentPane.setLayout(new FlowLayout());
		//创建一个JLaber和一个JButton
		contentPane.add(button);
		contentPane.add(timeLabel);
		//创建监听器对象
		 * MyButtonListener listener = new MyButtonListener();
		 * private class MyButtonListener implements ActionListener ()
		 	 	@Override
				public void actionPerformed(ActionEvent arg0)
					myFrame.this.showTime();
		//把监听器注册给按钮
		//匿名类
//		button.addActionListener(new ActionListener() {//接口不能直接实例化所以直接在后面加大括号调用方法
//			@Override
//			public void actionPerformed(ActionEvent arg0)
//			{
//				myFrame.this.showTime();
//			}
//		});
		button.addActionListener((e)->{//lambda表达式
			showTime();//也可以使用myFrame.this.showTime();//调用外部类的方法
	public void showTime()
		SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
		String strtime = sdf.format(new Date());
		timeLabel.setText(strtime);

运行结果如图:

每次点击会或得当前时间

button.addActionListener(new ActionListener() {//接口不能直接实例化所以直接在后面加大括号调用方法
	@Override
	public void actionPerformed(ActionEvent arg0)
		myFrame.this.showTime();

这一段代码可以用lambda表达式简化为:

button.addActionListener((e)->{//lambda表达式
	showTime();//也可以使用myFrame.this.showTime();//调用外部类的方法

lambda表达式可以参照:https://www.cnblogs.com/tiantianbyconan/p/3613506.html

废话不多说,代码走起:备注为了方便,个人新建了一个myFrame类。////swing实现简单的窗口点击事件,点击效果为显示当前时间//Create by Lee_1310 on2019.3.21 16:57//Reprint indicating source:https://blog.csdn.net/Lee_1310//package SwingDemo... import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; public class FrameApp extends JFrame JLabel label; JButton button1,button2; public FrameApp() super("J...
swing初始化一个JFrame实现点击A界面的一个按钮,显示B界面,无论点击多少次,都只显示一个B界面。 A界面:public class Demo extends JFrame { private JPanel contentPane; /** * Launch the application. public static void main(St
<?import java.lang.*?> <?import javafx.scene.layout.*?> <?import javafx.scene.layout.AnchorPane?> <AnchorPane prefHeight="309.0" p
一、前言今天在使用Java Swing中的JButton的事件触发机制时遇到了许多问题,简单的了解了一下。二、事件监听机制下面用一张图分析事件监听的机制(图片来自网络): 三、代码分析3.1 分析一1.事件源注册监听器JButton newButton = new JButton(); newButton.addActionLister(listener);2.用户触发事件 例如单击该按钮
import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.text.SimpleDateFormat;import javax.swing.JFrame; import javax.swing.JTex