关于JAVA 编写的购物车 GUI

break__wind 发布于 2012/11/25 19:24
阅读 897
收藏 0

@DDT 你好,想跟你请教个问题:

你好 可以帮一个忙吗,我需要编写一个简单的GUI java 关于购物车, 包括登录界面 ,之后是列出所有商品 , 加商品到购物车,购物车里面可以移除商品和更换商品数量,最后就是结账,这个程序不需要数据库建立,,希望可以帮我一下, 非常感谢你

加载中
0
Van_chan
Van_chan
刚刚做了!!是不是课程设计,要Cookie做!
0
break__wind
break__wind

cookie 没有学过,老师要求用Swing 组建,我目前无法下手,希望可以帮忙一下。

0
break__wind
break__wind

和网站没有联系,就是用初级的Java 知识去编写,因为我是是Java 初学者。

0
DTC2
DTC2

找到一个现成的

http://zhidao.baidu.com/question/123506361.html

0
break__wind
break__wind

非常感谢你,但是老师要求界面设计要非常美观 而且要有登陆窗口,和结算窗口,所以这个不是很好,希望你能再次帮忙,非常感谢你!!

0
南湖船老大
南湖船老大
既然是作业就得自己做。。
0
break__wind
break__wind
我已经想了很久了,但是还是没有结果。。我的能力有限
0
break__wind
break__wind
我真切的需要你们的帮忙!
0
逝水fox
逝水fox
能力有限就给老师明说做不出来。有脾气不听课多少也应该有骨气果断挂科。
0
break__wind
break__wind


import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.text.*;
import java.util.*;
 
public class ShoppingFrame extends JFrame {
    private ShoppingCart items;
    private JTextField total;
    private JButton jbtshow= new JButton("My Cart ");




private JFrame ShoppingFrame= new JFrame();






 


 
    public ShoppingFrame(Catalog products)      {
     
       
   
        setTitle(products.getName());
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        items = new ShoppingCart();
 
        
       total = new JTextField("$0.00", 12);
        total.setEditable(false);
        total.setEnabled(false);
        total.setDisabledTextColor(Color.BLACK);
        JPanel p = new JPanel();
        p.setBackground(Color.PINK);
       JLabel l = new JLabel("order total");
        l.setForeground(Color.YELLOW);
        p.add(l);
        p.add(total);
        add(p, BorderLayout.SOUTH); 
       
 
        p = new JPanel(new GridLayout(products.size(), 1));
        for (int i = 0; i < products.size(); i++)
            addItem(products.get(i), p);
        add(p, BorderLayout.CENTER);
 
  
      
        add(jbtshow, BorderLayout.EAST);
        jbtshow.addActionListener(new ActionListener(){
         public void actionPerformed(ActionEvent e){
        ShoppingCart items = new ShoppingCart();
            get
        
         showcart f = new showcart(items);
        
        setVisible(false);
        f.setVisible(true);
        }
        });
 
       
        pack();
    }
 
   
    /*private JPanel makeCheckBoxPanel() {
        JPanel p = new JPanel();
        p.setBackground(Color.blue);
        final JCheckBox cb = new JCheckBox("");
        p.add(cb);
        cb.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                
                items.setDiscount(cb.isSelected());
                updateTotal();
            }
        });
        return p;
    }*/
 
    
    private void addItem(final Item product, JPanel p) {
        JPanel sub = new JPanel(new FlowLayout(FlowLayout.LEFT));
        sub.setBackground(new Color(0, 180, 0));
        final JTextField quantity = new JTextField(3);
        quantity.setHorizontalAlignment(SwingConstants.CENTER);
        quantity.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                updateItem(product, quantity);
                quantity.transferFocus();
            }
        });
        quantity.addFocusListener(new FocusAdapter() {
            public void focusLost(FocusEvent e) {
                updateItem(product, quantity);
            }
        });
        sub.add(quantity);
        JLabel l = new JLabel("" + product);
        l.setForeground(Color.white);
        sub.add(l);
        p.add(sub);
    }
 
    
    private void updateItem(Item product, JTextField quantity) {
        int number;
        String text = quantity.getText().trim();
        try {
            number = Integer.parseInt(text);
        } catch (NumberFormatException error) {
            number = 0;
        }
        if (number <= 0 && text.length() > 0) {
            Toolkit.getDefaultToolkit().beep();
            quantity.setText("");
            number = 0;
        }
        items.add(new ItemOrder(product, number));
        updateTotal();
    }
 
   
    private void updateTotal() {
        double amount = items.getTotal();
        total.setText(NumberFormat.getCurrencyInstance().format(amount));
    }
}
返回顶部
顶部