JLIST复选框问题

匿名 (未验证) 提交于 2019-12-03 00:19:01

JLIST复选框问题

list.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);

其中的参数我们选择可以复选的multiple,还有一个关键的地方是我们需要在监听事件地方将我们每一次选中的数组存到里面去,

同时由于set函数的添加方式会发生覆盖问题,这里我们并没有采用add方式,而是采用了set 同时加上每一次的上次的所选的数值

同时我们通过案例可以发现这时候我们每次的选中次序 比如先从上到下 和从下到上的顺序情况

package Z9_9; import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*;  public class Z9_9_basis implements ItemListener,ListSelectionListener  { 	JList list; 	JComboBox comboBox; 	JTextArea ta; 	public Z9_9_basis() { 		// TODO Auto-generated constructor stub 		JFrame jFrame=new JFrame("列表框与组合框测试"); 		String [] item={"中山大学","华南理工","背景大学","韶关学院"}; 		list = new JList(item); 		//list.setSelectedIndex(1); 		list.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); 		list.addListSelectionListener(this); 		Container contentPane=jFrame.getContentPane(); 		contentPane.setLayout(new GridLayout(1,2)); 		JPanel jp=new JPanel(); 		ta=new JTextArea(50,50); 		jp.add(ta); 		contentPane.add(new JScrollPane(list)); 		contentPane.add(jp); 		jFrame.setSize(800,600); 		jFrame.setVisible(true); 		}  	public static void main(String[] args) { 		// TODO Auto-generated method stub 		new Z9_9_basis(); 	} 	@SuppressWarnings("deprecation") 	@Override 	public void valueChanged(ListSelectionEvent e) { 		if(e.getSource() == list) 		{ 			Object[] str = list.getSelectedValues();//将选中的数值存在str中 			for(Object s:str){ 				ta.setText(ta.getText()+(String)s);//做保留处理 			} 		} 	}  	@Override 	public void itemStateChanged(ItemEvent e) { 		// TODO Auto-generated method stub 		 	}  } 

文章来源: JLIST复选框问题
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!