JTabbedPane的事件监听

当用户选择JTabbedPane中的任何一个选项卡的时候,可以触发一个事件监听。这个监听接口是 ChangeListener,位于javax.swing.event包中。

例如:想要获取选项卡中选中的组件的名称,那么我们应该怎么做了?下面给出代码给大家
package com.gxa.edu;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.event.ChangeListener;
import javax.swing.event.ChangeEvent;
import javax.swing.JTabbedPane;

public class TabbedPaneFrame extends JFrame implements ChangeListener {

	private JPanel productPanel;
	private JPanel userPanel;
	private JTabbedPane tabbedPane;
	
	public TabbedPaneFrame() {
		super("JTabbedPane的事件监听");
		init();
	}

	public void init() {
		setSize(500,300);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		productPanel = new JPanel();
		productPanel.setName("商品信息面板"); //为面板设置名称
		userPanel = new JPanel();
		userPanel.setName("用户信息面板");
		tabbedPane = new JTabbedPane();
		tabbedPane.add("商品信息", productPanel); //将面板添加到选项卡中
		tabbedPane.add("用户信息", userPanel);
		tabbedPane.addChangeListener(this); //添加监听器
		this.getContentPane().add(tabbedPane); //将选项卡加入到窗口中
		this.setVisible(true);
	}
	
	/**
	* 实现ChangeListener接口中的stateChanged方法
	* 当侦听器的目标已更改其状态时调用
	*/
	public void stateChanged(ChangeEvent e) {
		String name = tabbedPane.getSelectedComponent();
		System.out.println("你选中的面板名称 === " + name);
	}
}

你可能感兴趣的:(swing)