Simulate shopping cart java program

package for;

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("Big Brother Zhou's shopping cart").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());
		// The middle panel is set to 4 rows and 1 column
		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("Eraser");
		vRight.add("glasses");
		vRight.add("Mobile");
		vLeft = new Vector<String>();
		vLeft.add("Down jacket");
		vLeft.add("Pants");
		vLeft.add("Shirt");
		vLeft.add("Sneakers");
		vLeft.add("Backpack");
		vLeft.add("Racket");
		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);
		// add a button to the panel

		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("I did it");
			} 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();
			// move to the right

			if (t.getText().equals(">")) {

				int num[] = j1.getSelectedIndices();
				if (num.length == 0 || vLeft.size() == 0) {
					JOptionPane.showMessageDialog(null, "Pro, please move after selecting the option");
				} 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);
					}
				}

			} // move to the left
			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, "Dear, please select and move");
				} 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

		}

	}
}

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324605988&siteId=291194637