⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gui.java

📁 用JAVA实现购物框程序,通过对JAVA面向对象思想的深入理解,采用JAVABEAN思想设计了GOOD类,又采用了MVC设计模式,实现了各个功能的分离,提高了代码的可读性和可重用性!
💻 JAVA
字号:
package shoppingBasket;
import java.awt.BorderLayout;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.File;
import java.io.FileInputStream;
import java.util.ArrayList;
import java.util.List;
import java.util.Vector;

import javax.swing.DefaultComboBoxModel;
import javax.swing.DefaultListModel;
import javax.swing.JButton;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.ListModel;

import javax.swing.WindowConstants;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;



/**
 * This code was edited or generated using CloudGarden's Jigloo
 * SWT/Swing GUI Builder, which is free for non-commercial
 * use. If Jigloo is being used commercially (ie, by a corporation,
 * company or business for any purpose whatever) then you
 * should purchase a license for each developer using Jigloo.
 * Please visit www.cloudgarden.com for details.
 * Use of Jigloo implies acceptance of these licensing terms.
 * A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED FOR
 * THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED
 * LEGALLY FOR ANY CORPORATE OR COMMERCIAL PURPOSE.
 */
public class Gui extends javax.swing.JFrame {
	private JPanel jPanel1;
	private JTextField textField;
	private JList listShoppingBasket;
	private JButton buttonDelete;
	private JButton buttonAdd;
	private JList listGoods;


	ShoppingBasket sb=new ShoppingBasket();
	Goods goods=new Goods();
	/**
	 * Auto-generated main method to display this JFrame
	 */
	public static void main(String[] args) {
		Gui inst = new Gui();
		inst.setVisible(true);
		ShoppingBasket sb=new ShoppingBasket();
	}

	public Gui() {
		super();
		initGUI();
		this.listGoods.setListData(excute("c:\\aa.txt"));

	}


	public static String[] excute(String str){
		File file=new File(str);
		int len=(int) file.length();
		byte []buf=new byte[len];
		try{
			FileInputStream fis=new FileInputStream(str);
			fis.read(buf);
			fis.close();
		}
		catch(Exception e){
			e.printStackTrace();
		}

		String str1=new String(buf);
		String []ss=str1.split("\r\n");

		return ss;

	}

	private void initGUI() {

		try {
			setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
			{
				jPanel1 = new JPanel();
				GridBagLayout jPanel1Layout = new GridBagLayout();
				jPanel1Layout.columnWeights = new double[] {0.1, 0.1, 0.1, 0.1, 0.1, 0.1};
				jPanel1Layout.columnWidths = new int[] {7, 7, 7, 7, 7, 7};
				jPanel1Layout.rowWeights = new double[] {0.1, 0.1, 0.1, 0.1, 0.1};
				jPanel1Layout.rowHeights = new int[] {7, 7, 7, 7, 7};
				getContentPane().add(jPanel1, BorderLayout.CENTER);
				jPanel1.setLayout(jPanel1Layout);
				{
					ListModel listGoodsModel = new DefaultComboBoxModel(
							new String[] { "Item One", "Item Two" });
					listGoods = new JList();
					jPanel1.add(listGoods, new GridBagConstraints(1, 1, 2, 3, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0));
					listGoods.setModel(listGoodsModel);
				}
				{
					buttonAdd = new JButton();
					jPanel1.add(buttonAdd, new GridBagConstraints(
							3,
							1,
							1,
							1,
							0.0,
							0.0,
							GridBagConstraints.CENTER,
							GridBagConstraints.NONE,
							new Insets(0, 0, 0, 0),
							0,
							0));
					buttonAdd.setText(" Add  ");
				}
				{
					buttonDelete = new JButton();
					jPanel1.add(buttonDelete, new GridBagConstraints(
							3,
							2,
							1,
							1,
							0.0,
							0.0,
							GridBagConstraints.CENTER,
							GridBagConstraints.NONE,
							new Insets(0, 0, 0, 0),
							0,
							0));
					buttonDelete.setText("Delete");
				}
				{
					ListModel listShoppingBasketModel = new DefaultComboBoxModel(
//							new String[] { "Item One", "Item Two" }
					);
					listShoppingBasket = new JList();
					jPanel1.add(listShoppingBasket, new GridBagConstraints(4, 1, 1, 2, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0));
					listShoppingBasket.setModel(listShoppingBasketModel);
				}
				{
					textField = new JTextField();
					jPanel1.add(textField, new GridBagConstraints(4, 3, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0));
				}
			}
			pack();
			setSize(400, 300);
		} catch (Exception e) {
			e.printStackTrace();		
		}
		register();
	}

	public void register(){
//		this.listGoods.addListSelectionListener(select);
		this.buttonAdd.addActionListener(add);
		this.buttonDelete.addActionListener(delete);
	}

	ActionListener add = new ActionListener(){
		public void actionPerformed(ActionEvent e) {
			// TODO Auto-generated method stub
			String s=listGoods.getSelectedValue().toString();
			String []ss=s.split(" ");
			Goods g=new Goods();
			for(int i=0;i<ss.length;i++){

				if(i%2==0){
					g.setName(ss[i]);
				}
				else{
					float price = Float.parseFloat(ss[i]);
					g.setPrice(price);
				}

			}
			g.setCount(1);
			System.out.println(g.toString());

			sb.addGoods(g);
			for(int i=0;i<sb.list.size();i++){
				Object obj=sb.list.get(i);
				System.out.println(i+" + "+obj);
			}
			listShoppingBasket.setListData(sb.list);
			textField.setText(Float.toString(sb.getTotal(sb)));
		}
	};

	ActionListener delete =new ActionListener(){
		public void actionPerformed(ActionEvent e){
			String s=listShoppingBasket.getSelectedValue().toString();
			System.out.println(s);
			String []ss=s.split(" ");
			goods=new Goods();
			for(int i=0;i<ss.length;i++){

				if(i==0){
					goods.setName(ss[i]);
				}
				else{
					if(i==1){
						float price = Float.parseFloat(ss[i]);
						goods.setPrice(price);
					}
					else{
						int count = Integer.parseInt(ss[i]);
						goods.setCount(count);
					}

				}
			}
			System.out.println(goods.toString());
			sb.deleteGoods(goods);
			for(int i=0;i<sb.list.size();i++){
				Object obj=sb.list.get(i);
				System.out.println(i+" + "+obj);
			}
			listShoppingBasket.setListData(sb.list);	
			textField.setText(Float.toString(sb.getTotal(sb)));
		}
	};






}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -