package pra;
import java.awt.Choice;
import java.awt.Color;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.GridLayout;
import java.awt.Image;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.image.ImageObserver;
import java.awt.image.ImageProducer;
import java.util.Vector;
import javax.swing.BorderFactory;
import javax.swing.DefaultListModel;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.border.Border;
public class Homework {
public static void main(String[] args) {
new MyFrame("周大哥的购物车").load();
}
}
class MyFrame extends JFrame {
JButton b1;
JButton b2;
JButton b3;
JButton b4;
JPanel p1;
JPanel p2;
JPanel p3;
Vector<String> vLeft;
Vector<String> vRight;
JList j2;
JList j1;
MyFrame(String name) {
// this.setBackground(Color.BLUE);
this.setTitle(name);
// this.setIconImage(new );
b1 = new JButton(">>");
// b1.setContentAreaFilled(false);
b1.setBorder(BorderFactory.createRaisedBevelBorder());
b2 = new JButton(">");
b2.setBorder(BorderFactory.createRaisedBevelBorder());
b3 = new JButton("<<");
b3.setBorder(BorderFactory.createRaisedBevelBorder());
b4 = new JButton("<");
b4.setBorder(BorderFactory.createRaisedBevelBorder());
p1 = new JPanel();
p1.setBackground(Color.PINK);
//p1.setPreferredSize(new Dimension(300, 800));
b2.addMouseListener(new Mon1());
b4.addMouseListener(new Mon1());
b1.addMouseListener(new Mon2());
b3.addMouseListener(new Mon2());
// 中间的面板设置4行1列
p2 = new JPanel(new GridLayout(4, 1, 0, 20));
p2.setBackground(Color.red);
p3 = new JPanel();
p3.setBackground(Color.PINK);
p3.setBounds(100, 100, 400, 500);
vRight = new Vector<String>();
vRight.add("书");
vRight.add("笔");
vRight.add("橡皮");
vRight.add("眼镜");
vRight.add("手机");
vLeft = new Vector<String>();
vLeft.add("羽绒服");
vLeft.add("裤子");
vLeft.add("衬衣");
vLeft.add("运动鞋");
vLeft.add("背包");
vLeft.add("球拍");
j1 = new JList(vLeft);
//j1.setPreferredSize(new Dimension(80,10 ));
j1.setFont(new Font("宋体", Font.BOLD + Font.ITALIC, 30));
j1.setSelectionBackground(Color.yellow);
j2 = new JList(vRight);
j2.setFont(new Font("宋体", Font.BOLD + Font.ITALIC, 30));
j2.setSelectionBackground(Color.yellow);
//j2.setPreferredSize(new Dimension(100, 8));
}
void load() {
this.setLayout(new FlowLayout(FlowLayout.CENTER, 50, 50));
j1.add(b1);
j1.setVisibleRowCount(10);
p1.add(new JScrollPane(j1));
add(p1);
// 在面板內添加按鈕
p2.add(b1);
p2.add(b2);
p2.add(b3);
p2.add(b4);
add(p2);
// p3.add(t2);
j2.setVisibleRowCount(10);
p3.add(new JScrollPane(j2));
add(p3);
pack();
this.setVisible(true);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setLocationRelativeTo(null);
}
class Mon2 implements MouseListener {
@Override
public void mouseClicked(MouseEvent e) {
// TODO Auto-generated method stub
JButton button = (JButton) e.getSource();
if (button.getText().equals(">>")) {
vRight.addAll(vLeft);
vLeft.clear();
// System.out.println("我执行了");
} else {
vLeft.addAll(vRight);
vRight.clear();
}
j1.updateUI();
j2.updateUI();
}
@Override
public void mouseEntered(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseExited(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseReleased(MouseEvent e) {
// TODO Auto-generated method stub
}
}
class Mon1 implements MouseListener {
@Override
public void mouseClicked(MouseEvent e) {
// TODO Auto-generated method stub
// TODO Auto-generated method stub
JButton t = (JButton) e.getSource();
// 向右移动
if (t.getText().equals(">")) {
int num[] = j1.getSelectedIndices();
if (num.length == 0 || vLeft.size() == 0) {
JOptionPane.showMessageDialog(null, "亲,请选择选项后移动");
} else if (num.length >= 1) {
Vector<String> temp = new Vector<String>();
for (int i : num) {
// if((vLeft.get(i))!=null)
temp.add(vLeft.get(i));
}
for (String i : temp) {
vLeft.remove(i);
vRight.add(i);
}
}
} // 向左移动
else if (t.getText().equals("<")) {
int num[] = j2.getSelectedIndices();
Vector<String> temp = new Vector<String>();
if (num.length == 0 || vRight.size() == 0) {
JOptionPane.showMessageDialog(null, "亲,请选择好后移动");
} else {
for (int i : num) {
// if((vRight.get(i))!=null)
temp.add(vRight.get(i));
}
for (String aa : temp) {
vRight.remove(aa);
vLeft.add(aa);
}
}
}
j2.updateUI();
j1.updateUI();
j1.setSelectedIndex(0);
j2.setSelectedIndex(0);
}
@Override
public void mouseEntered(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseExited(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseReleased(MouseEvent e) {
// TODO Auto-generated method stub
}
}
}
模拟购物车 java程序
最新推荐文章于 2024-07-07 04:15:00 发布