java swing 监听列表项选择事件案例

版权声明:博客知识产权来源命运的信徒,切勿侵权 https://blog.csdn.net/qq_37591637/article/details/86542401

 列表框控件 JList 会显示很多项供用户选择,通常在使用时会根据用户选择的列表项完成不同的操作。


代码如下

package cn.com.plane;

import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;

public class JListDemo {
	/*
	 * author:命运的信徒 date:2019/1/8 arm:监听列表项选择事件案例
	 */
	static JLabel jl = new JLabel();
	static JList<String> jlist;

	private static void setPage() {
		// 1.设置窗体和大小
		JFrame jf = new JFrame("监听列表项选择事件案例");
		jf.setPreferredSize(new Dimension(500, 500));
		// 2 设置关闭窗体就是关闭程序
		jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		// 3.主要的代码
		JPanel jp = new JPanel();
		// 设置面板的大小
		jp.setBackground(Color.black);
		// 列表事件源 JList
		jlist = new JList<String>();
		jlist.setPreferredSize(new Dimension(300, 300));
		jlist.setBackground(Color.pink);
		jlist.setForeground(Color.GREEN);
		jlist.setFont(new Font("楷体",Font.BOLD,20));
		jlist.addListSelectionListener(new ListSelectionListener() {

			@Override
			public void valueChanged(ListSelectionEvent e) {
				// TODO Auto-generated method stub
				jl.setText("感谢您购买" + jlist.getSelectedValue());
			}
		});
		String[] ll = new String[] { "java", "vb", "c语言", "c++", "python" };
		// 把集合放在JList里面
		jlist.setListData(ll);
		jl.setForeground(Color.white);
		jp.add(jlist);
		jp.add(jl);
		jf.add(jp);
		// 4.设置窗体可见
		jf.pack();
		jf.setVisible(true);

	}

	public static void main(String[] args) {
		setPage();
	}
}

效果如下

 

猜你喜欢

转载自blog.csdn.net/qq_37591637/article/details/86542401