📄 listframe.java
字号:
package list;
import java.awt.BorderLayout;
import java.awt.Dimension;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JList;
import java.awt.*;
import javax.swing.JButton;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JLabel;
import javax.swing.DefaultListModel;
import java.awt.event.MouseEvent;
import java.awt.event.MouseAdapter;
/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2005</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
public class ListFrame extends JFrame {
String str;
JPanel contentPane;
DefaultListModel modelone = new DefaultListModel();
DefaultListModel modeltwo = new DefaultListModel();
JList lstList1 = new JList(modelone);
JList lstList2 = new JList(modeltwo);
JButton btnAdd = new JButton();
JButton btnRemove = new JButton();
JLabel lbl1 = new JLabel();
JLabel lbl2 = new JLabel();
JButton btnAdd1 = new JButton();
JButton btnRemove2 = new JButton();
public ListFrame() {
try {
setDefaultCloseOperation(EXIT_ON_CLOSE);
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
/**
* Component initialization.
*
* @throws java.lang.Exception
*/
private void jbInit() throws Exception {
contentPane = (JPanel) getContentPane();
contentPane.setLayout(null);
setSize(new Dimension(400, 300));
setTitle("列表");
lstList1.setVisibleRowCount(5);
lstList1.setBounds(new Rectangle(30, 80, 95, 179));
lstList2.setVisibleRowCount(5);
lstList2.setBounds(new Rectangle(245, 80, 96, 176));
lstList2.addMouseListener(new ListFrame_lstList2_mouseAdapter(this));
modelone.addElement("苹果");
modelone.addElement("菠萝");
modelone.addElement("香蕉");
modelone.addElement("西瓜");
modelone.addElement("芒果");
modelone.addElement("樱桃");
modelone.addElement("草莓");
modelone.addElement("葡萄");
modelone.addElement("桔子");
modelone.addElement("梨");
lstList1.addMouseListener(new ListFrame_lstList1_mouseAdapter(this));
btnAdd.setBounds(new Rectangle(132, 87, 102, 29));
btnAdd.setText("添加 >");
btnAdd.addActionListener(new ListFrame_btnAdd_actionAdapter(this));
btnRemove.setBounds(new Rectangle(132, 164, 104, 29));
btnRemove.setText("移除 <");
btnRemove.addActionListener(new ListFrame_btnRemove_actionAdapter(this));
lbl1.setText("列表 1");
lbl1.setBounds(new Rectangle(56, 49, 40, 28));
lbl2.setText("列表 2");
lbl2.setBounds(new Rectangle(279, 50, 35, 27));
btnAdd1.setBounds(new Rectangle(132, 127, 102, 28));
btnAdd1.setText("全部添加 >>");
btnAdd1.addActionListener(new ListFrame_btnAdd1_actionAdapter(this));
btnRemove2.setBounds(new Rectangle(132, 200, 104, 29));
btnRemove2.setText("全部删除 <<");
btnRemove2.addActionListener(new ListFrame_btnRemove2_actionAdapter(this));
contentPane.add(lstList1);
contentPane.add(lstList2);
contentPane.add(lbl1);
contentPane.add(lbl2);
contentPane.add(btnRemove2);
contentPane.add(btnRemove);
contentPane.add(btnAdd1);
contentPane.add(btnAdd);
}
public void btnAdd_actionPerformed(ActionEvent e) {
modeltwo.addElement(str);
}
public void lstList1_mouseClicked(MouseEvent e) {
str = (String)lstList1.getSelectedValue();
}
public void lstList2_mouseClicked(MouseEvent e) {
str = (String)lstList2.getSelectedValue();
}
public void btnRemove_actionPerformed(ActionEvent e) {
modeltwo.removeElement(str);
}
public void btnAdd1_actionPerformed(ActionEvent e) {
for(int i=0;i<lstList1.getModel().getSize();i++)
modeltwo.addElement(lstList1.getModel().getElementAt(i));
}
public void btnRemove2_actionPerformed(ActionEvent e) {
modeltwo.removeAllElements();
}
}
class ListFrame_btnAdd1_actionAdapter implements ActionListener {
private ListFrame adaptee;
ListFrame_btnAdd1_actionAdapter(ListFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.btnAdd1_actionPerformed(e);
}
}
class ListFrame_btnRemove2_actionAdapter implements ActionListener {
private ListFrame adaptee;
ListFrame_btnRemove2_actionAdapter(ListFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.btnRemove2_actionPerformed(e);
}
}
class ListFrame_lstList1_mouseAdapter extends MouseAdapter {
private ListFrame adaptee;
ListFrame_lstList1_mouseAdapter(ListFrame adaptee) {
this.adaptee = adaptee;
}
public void mouseClicked(MouseEvent e) {
adaptee.lstList1_mouseClicked(e);
}
}
class ListFrame_lstList2_mouseAdapter extends MouseAdapter {
private ListFrame adaptee;
ListFrame_lstList2_mouseAdapter(ListFrame adaptee) {
this.adaptee = adaptee;
}
public void mouseClicked(MouseEvent e) {
adaptee.lstList2_mouseClicked(e);
}
}
class ListFrame_btnRemove_actionAdapter implements ActionListener {
private ListFrame adaptee;
ListFrame_btnRemove_actionAdapter(ListFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.btnRemove_actionPerformed(e);
}
}
class ListFrame_btnAdd_actionAdapter implements ActionListener {
private ListFrame adaptee;
ListFrame_btnAdd_actionAdapter(ListFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.btnAdd_actionPerformed(e);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -