鼠标点击交换两个list的列表项
2009-02-23 13:11
260 查看
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);
public static void main(String[] args)
{
ListSwitch ls = new ListSwitch();
ls.go();
}
void go()
{
f.setSize(500,400);
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");
l2.add("blue");
l2.add("red");
l2.add("green");
l2.add("black");
p1.add(l1);
p2.add(b1);
p2.add(b2);
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(l2,l1));
f.addWindowListener(new WindowHandler());
f.setVisible(true);
}
class ButtonHandler implements ActionListener
{
List laa,lbb;
ButtonHandler(List la,List lb)
{
laa = la;
lbb = lb;
}
public void actionPerformed(ActionEvent e)
{
String s;
s = laa.getItem(laa.getSelectedIndex());
laa.remove(laa.getSelectedIndex());
lbb.add(s);
}
}
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)
{
String s;
s = laa.getItem(laa.getSelectedIndex());
laa.remove(laa.getSelectedIndex());
lbb.add(s);
}
}
}
class WindowHandler extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
System.exit(1);
}
}
}
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);
public static void main(String[] args)
{
ListSwitch ls = new ListSwitch();
ls.go();
}
void go()
{
f.setSize(500,400);
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");
l2.add("blue");
l2.add("red");
l2.add("green");
l2.add("black");
p1.add(l1);
p2.add(b1);
p2.add(b2);
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(l2,l1));
f.addWindowListener(new WindowHandler());
f.setVisible(true);
}
class ButtonHandler implements ActionListener
{
List laa,lbb;
ButtonHandler(List la,List lb)
{
laa = la;
lbb = lb;
}
public void actionPerformed(ActionEvent e)
{
String s;
s = laa.getItem(laa.getSelectedIndex());
laa.remove(laa.getSelectedIndex());
lbb.add(s);
}
}
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)
{
String s;
s = laa.getItem(laa.getSelectedIndex());
laa.remove(laa.getSelectedIndex());
lbb.add(s);
}
}
}
class WindowHandler extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
System.exit(1);
}
}
}
相关文章推荐
- 界面上有几个球队名字的列表,将鼠标放到球队名字上就变为红色背景,其他球队背景颜色为白色,点击一个球队的时候就将点击的球队变为fontSize=30字体(fontSize=‘’回到默认)。
- Python - 两个列表(list)组成字典(dict)
- VS2010/MFC 获取ListControl鼠标点击位置
- [LintCode] Swap Two Nodes in Linked List 交换链表中的两个结点
- Python+Selenium 操作示例——鼠标悬停显示二级菜单,再点击二级菜单或下拉列表
- JS响应鼠标点击实现两个滑块区间拖动效果
- jquery实现鼠标点击后展开列表内容的导航栏效果
- Selenium笔记---鼠标悬停显示二级菜单 点击下拉列表
- 【python】两个list列表逐元素相减
- javascript事件列表大全解说,点击事件,双击事件,触发事件,键盘事件,鼠标移...
- 两个自定义对象List列表取交集(intersection)
- Python - 利用zip函数将两个列表(list)组成字典(dict)
- javascript事件列表大全解说,点击事件,双击事件,触发事件,键盘事件,鼠标移动事件,javaScript事件使用小全
- jQuery两个列表中元素相互交换Demo
- python列表中任意两个元素交换
- Python3基础 list 调换列表中的两个元素
- 隔行变色,选中变色,鼠标变小手样式;姓名查询条件 过滤敏感字符 下拉列表排序 非空验证添加信息 点击按钮删除
- javascript事件列表大全解说,点击事件,双击事件,触发事件,键盘事件,鼠标移...
- vue列表渲染,以及鼠标点击改变样式的问题
- flex模拟鼠标点击列表,弹出相关信息