📄 listswitch.java
字号:
import java.awt.*;
import java.awt.event.*;
public class ListSwitch
{
Frame f=new Frame("鼠标双击交换两个List的列表项");
Panel p1=new Panel();
Panel p2=new Panel(new GridLayout(2,1,5,30));
Panel p3=new Panel();
Button b1=new Button(">>");
Button b2=new Button("<<");
List l1=new List(10);
List l2=new List(10);
Font ft=new Font("Serif",Font.BOLD,18);
public static void main(String arg[])
{
ListSwitch ls=new ListSwitch();
ls.go();
}
void go()
{
f.setSize(500,300);
f.setLayout(new FlowLayout());
f.add(p1);
f.add(p2);
f.add(p3);
l1.add("desk");
l1.add("computer");
l1.add("printer");
l1.add("pen");
l1.add("book");
l1.add("paper");
l1.setFont(ft);
l2.add("yellow");
l2.add("brown");
l2.add("white");
l2.add("pink");
l2.add("red");
l2.add("blue");
l2.setFont(ft);
p1.add(l1);
p1.add(b1);
p2.add(b2);
b1.setFont(ft);
b2.setFont(ft);
p3.add(l2);
b1.addActionListener(new ButtonHandler(l1,l2));
b2.addActionListener(new ButtonHandler(l2,l1));
l1.addMouseListener(new MouseHandler(l1,l2));
l2.addMouseListener(new MouseHandler(l1,l2));
f.addWindowListener(new WindowHandler());
f.setVisible(true);
}
void exchange(List la,List lb)
{
String itm;
int idx;
itm=la.getSelectedItem();
idx=la.getSelectedIndex();
if(idx>=0)
{
lb.add(itm);
la.remove(idx);
}
}
class ButtonHandler implements ActionListener
{
List laa,lbb;
ButtonHandler(List la,List lb)
{
laa=la;
lbb=lb;
}
public void actionPerformed(ActionEvent e)
{
exchange(laa,lbb);
}
}
class MouseHandler extends MouseAdapter
{
List laa,lbb;
MouseHandler(List la,List lb)
{
laa=la;
lbb=lb;
}
public void mouseClicked(MouseEvent e)
{
if(e.getClickCount()==2)
exchange(laa,lbb);
}
}
class WindowHandler extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
System.exit(-1);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -