62,614
社区成员
发帖
与我相关
我的任务
分享
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.DefaultListModel;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
public class MyList extends JFrame{
private static final long serialVersionUID = 1L;
private JLabel lab1,lab2;
private JButton but[];
private JList list1,list2;
private String str[]={"aa","bb","cc","dd","ee","ff"};
private DefaultListModel model1,model2;
public MyList(){
super("MyList");
this.setLayout(null);
this.setBounds(200,200,500,300);
//标签lab1
lab1=new JLabel("list1");
lab1.setBounds(60,10,50,30);
this.add(lab1);
//列表list1
model1=new DefaultListModel();
list1=new JList(model1);
list1.setBounds(50,50,50,120);
for(int i=0;i<str.length;i++){
model1.addElement(str[i]);
}
this.add(list1);
//按钮组
but=new JButton[4];
but[0]=new JButton(">");
but[1]=new JButton("<");
but[2]=new JButton(">>");
but[3]=new JButton("<<");
for(int i=0;i<but.length;i++){
but[i].addActionListener(new Handler());
but[i].setBounds(150,50+i*32,50,30);
this.add(but[i]);
}
//标签list2
lab2=new JLabel("list2");
lab2.setBounds(260,10,50,30);
this.add(lab2);
//列表list2
model2=new DefaultListModel();
list2=new JList(model2);
list2.setBounds(250,50,50,120);
this.add(list2);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String []args){
new MyList();
}
class Handler implements ActionListener{
public void actionPerformed(ActionEvent e) {
if(e.getSource()==but[0]){
while(!list1.isSelectionEmpty()){
model2.addElement(list1.getSelectedValue());
model1.removeElement(list1.getSelectedValue());
}
}
if(e.getSource()==but[1]){
while(!list2.isSelectionEmpty()){
model1.addElement(list2.getSelectedValue());
model2.removeElement(list2.getSelectedValue());
}
}
if(e.getSource()==but[2]){
for(int i=0;i<model1.size();i++){
model2.addElement(model1.getElementAt(i));
}
model1.removeAllElements();
}
if(e.getSource()==but[3]){
for(int i=0;i<model2.size();i++){
model1.addElement(model2.getElementAt(i));
}
model2.removeAllElements();
}
}
}
}