📄 viewcart.java
字号:
package RegisterAndLogin;
import java.awt.BorderLayout;
import javax.swing.DefaultCellEditor;
import javax.swing.JPanel;
import javax.swing.JFrame;
import java.awt.Dimension;
import javax.swing.JTable;
import java.awt.Rectangle;
import javax.swing.JButton;
import javax.swing.JTable;
import javax.swing.table.*;
import java.util.*;
import javax.swing.JScrollPane;
import javax.swing.JList;
import java.awt.event.*;
import java.io.*;
import java.net.*;
import javax.swing.JOptionPane;
public class ViewCart extends JFrame implements QuanJu {
private static final long serialVersionUID = 1L;
private JPanel jContentPane = null;
private JButton jButtonContinue = null;
private JButton jButtonToPayCenter = null;
private JButton jButtonDelete = null;
//private JButton jButtonConfirmAmount = null;
private JScrollPane jScrollPaneCart = null;
private JTable jTableCartList = null;
public Socket clientSocket=null;
public ObjectOutputStream os=null;
public ObjectInputStream is=null;
/**
* This is the default constructor
*/
public ViewCart(Socket soc,ObjectOutputStream os,ObjectInputStream is) {
super();
this.clientSocket=soc;
this.os=os;
this.is=is;
initialize();
}
/**
* This method initializes this
*
* @return void
*/
private void initialize() {
this.setSize(510, 370);
this.setContentPane(getJContentPane());
this.setTitle("JFrame");
this.setVisible(true);
}
/**
* This method initializes jContentPane
*
* @return javax.swing.JPanel
*/
private JPanel getJContentPane() {
if (jContentPane == null) {
jContentPane = new JPanel();
jContentPane.setLayout(null);
jContentPane.add(getJButtonContinue(), null);
jContentPane.add(getJButtonToPayCenter(), null);
jContentPane.add(getJButtonDelete(), null);
// jContentPane.add(getJButtonConfirmAmount(), null);
jContentPane.add(getJScrollPaneCart(), null);
}
return jContentPane;
}
/**
* This method initializes jTableGoodsList
*
* @return javax.swing.JTable
*/
/**
* This method initializes jButtonContinue
*
* @return javax.swing.JButton
*/
private JButton getJButtonContinue() {
if (jButtonContinue == null) {
jButtonContinue = new JButton();
jButtonContinue.setBounds(new Rectangle(14, 281, 121, 29));
jButtonContinue.setText("继续挑选商品");
jButtonContinue.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
System.out.println("actionPerformed()"); // TODO Auto-generated Event stub actionPerformed()
//回到商店继续挑选
setVisible(false);
}
});
}
return jButtonContinue;
}
/**
* This method initializes jButtonToPayCenter
*
* @return javax.swing.JButton
*/
private JButton getJButtonToPayCenter() {
if (jButtonToPayCenter == null) {
jButtonToPayCenter = new JButton();
jButtonToPayCenter.setBounds(new Rectangle(200, 282, 135, 32));
jButtonToPayCenter.setText("结算 确认支付");
jButtonToPayCenter.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
System.out.println("actionPerformed()"); // TODO Auto-generated Event stub actionPerformed()
//去结算中心结算
// PayCenter payframe=new PayCenter(clientSocket,os,is);
// System.exit(0);
try{
os.writeObject(ConstanValue.MSG_COMFIRM_PAYMENT);
os.flush();
String Msg=(String)is.readObject();
if(Msg.equals(ConstanValue.MSG_ACC_PAYMENT))
{
//删除购物车中的货物
for(int i=0;i<20;i++)
{
jTableCartList.setValueAt("", i, 0);
jTableCartList.setValueAt("", i, 1);
jTableCartList.setValueAt("", i, 2);
jTableCartList.setValueAt("", i, 3);
jTableCartList.setValueAt("", i, 4);
jTableCartList.setValueAt("", i, 5);
jTableCartList.setValueAt("", i, 6);
jTableCartList.setValueAt("", i, 7);
}
cart.clear();
JOptionPane.showMessageDialog(null, "成功交易");
}
else
{
Msg=(String)is.readObject();
JOptionPane.showMessageDialog(null, Msg);
}
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
});
}
return jButtonToPayCenter;
}
/**
* This method initializes jButtonDelete
*
* @return javax.swing.JButton
*/
private JButton getJButtonDelete() {
if (jButtonDelete == null) {
jButtonDelete = new JButton();
jButtonDelete.setBounds(new Rectangle(350, 222, 144, 41));
jButtonDelete.setText("删除选中的商品");
jButtonDelete.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
System.out.println("actionPerformed()"); // TODO Auto-generated Event stub actionPerformed()
int row=jTableCartList.getSelectedRow();
if(row==-1)
JOptionPane.showMessageDialog(null, "请选中一件商品");
else
{
String name=(String)jTableCartList.getValueAt(row, 1);
if(name.equals(""))
JOptionPane.showMessageDialog(null, "请选中一件商品");
else
{
int goodsid=(Integer)jTableCartList.getValueAt(row, 0);
String ownerId=(String)jTableCartList.getValueAt(row,1 );
System.out.println("delete goodsid:"+goodsid+" ownerId "+ownerId);
int num=(Integer)jTableCartList.getValueAt(row,6);
System.out.println(num);
//刷新
// jTableCartList.removeRowSelectionInterval(0, 20);
int col=jTableCartList.getColumnCount();
for(int i=row;i<cart.getNumOfItems()-1;i++)
{
for(int j=0;j<col;j++)
{
jTableCartList.setValueAt(jTableCartList.getValueAt(i+1, j), i, j);
}
}
for(int i=0;i<col;i++)
{
jTableCartList.setValueAt("", cart.getNumOfItems()-1, i);
}
cart.deleteItem(goodsid);
jTableCartList.removeRowSelectionInterval(0,10);
/* cart.deleteItem(goodsid);
int col=jTableCartList.getColumnCount();
for(int i=0;i<col;i++)
{
jTableCartList.setValueAt("", row, i);
}
jTableCartList.removeRowSelectionInterval(0, 10);
*/
String Msg=ConstanValue.MSG_DENEY_BUY_ONE_GOODS;
//向服务器发送删除信息
System.out.println(Msg);
try{
os.writeObject(Msg);
os.writeInt(goodsid);
os.writeObject(ownerId);
os.flush();
Msg=(String)is.readObject();
JOptionPane.showMessageDialog(null, Msg);
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
}
}
});
}
return jButtonDelete;
}
/**
* This method initializes jButtonConfirmAmount
*
* @return javax.swing.JButton
*/
/*private JButton getJButtonConfirmAmount() {
if (jButtonConfirmAmount == null) {
jButtonConfirmAmount = new JButton();
jButtonConfirmAmount.setBounds(new Rectangle(353, 157, 134, 52));
jButtonConfirmAmount.setText("确定修改");
jButtonConfirmAmount.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
System.out.println("actionPerformed()"); // TODO Auto-generated Event stub actionPerformed()
/*for(int i=0;i<cart.getNumOfItems();i++)
{
int goodid=(Integer)jTableCartList.getValueAt(i, 0);
int num=(Integer)jTableCartList.getValueAt(i, 6);
cart.setItemNum(goodid, num);
//向服务器发送修改信息************
}*/
//向服务器发送修改数量信息
/* try
{
for(int i=0;i<cart.getNumOfItems();i++)
{
String sailid=(String)jTableCartList.getValueAt(i,1);
if(!sailid.equals(""))
{
String Msg=ConstanValue.MSG_UPDATE_ONE_BILL_NUMBER;
int goodsId=(Integer)jTableCartList.getValueAt(i,0);
String sailerId=(String)jTableCartList.getValueAt(i, 1);
//int num=(Integer)jTableCartList.getValueAt(i, 6);
String NUM="";
int num=0;
try{
NUM=(String)jTableCartList.getValueAt(i,6);
NUM=NUM.trim();
num=Integer.parseInt(NUM);
}catch (Exception ex)
{
num=(Integer)jTableCartList.getValueAt(i, 6);
}
System.out.println(goodsId+":"+sailerId+":"+NUM+":"+cart.getItemNum(goodsId));
//int num=Integer.parseInt(NUM.trim());
System.out.println(num);
if(cart.getItemNum(goodsId)!=num)
{
os.writeObject(Msg);
os.writeObject(sailerId);
os.writeInt(goodsId);
os.writeInt(num);
os.flush();
Msg=(String)is.readObject();
if(Msg.equals(ConstanValue.ACC_UPDATE_ONE_BILL_NUMBER))
{
cart.setItemNum(goodsId, num);
JOptionPane.showMessageDialog(null,Msg);
}
else
{
JOptionPane.showMessageDialog(null,Msg+(String)is.readObject());
}
}
}
}
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
});
}
return jButtonConfirmAmount;
}
*/
/**
* This method initializes jScrollPaneCart
*
* @return javax.swing.JScrollPane
*/
private JScrollPane getJScrollPaneCart() {
if (jScrollPaneCart == null) {
jScrollPaneCart = new JScrollPane();
jScrollPaneCart.setBounds(new Rectangle(25, 32, 304, 241));
jScrollPaneCart.setViewportView(getJTableCartList());
}
return jScrollPaneCart;
}
/**
* This method initializes jTableCartList
*
* @return javax.swing.JTable
*/
private JTable getJTableCartList() {
if (jTableCartList == null) {
MytableModel mymodel=new MytableModel();
jTableCartList = new JTable(mymodel);
setUpIntegerEditor(jTableCartList);
//把购物车中的商品显示出来
if(cart.numofItems!=0)
{
Collection collection=cart.getItems();
Iterator ite=collection.iterator();
int i=0;
while(ite.hasNext())
{
CartItem goods=(CartItem)ite.next();
merchandise mer=goods.getgoods();
int num=goods.getQuantity();
jTableCartList.setValueAt(mer.goodsId,i, 0);
jTableCartList.setValueAt(mer.owenerId, i, 1);
jTableCartList.setValueAt(mer.goodsName, i, 2);
jTableCartList.setValueAt(mer.price, i, 3);
jTableCartList.setValueAt(mer.produceArea, i, 4);
jTableCartList.setValueAt(mer.introduce, i, 5);
jTableCartList.setValueAt(num, i, 6);
jTableCartList.setValueAt(mer.unit, i, 7);
i++;
}
}
}
return jTableCartList;
}
private void setUpIntegerEditor(JTable table) {
//Set up the editor for the integer cells.
final WholeNumberField integerField = new WholeNumberField(0, 5);
integerField.setHorizontalAlignment(WholeNumberField.RIGHT);
DefaultCellEditor integerEditor =
new DefaultCellEditor(integerField) {
//Override DefaultCellEditor's getCellEditorValue method
//to return an Integer, not a String:
public Object getCellEditorValue() {
return new Integer(integerField.getValue());
}
};
table.setDefaultEditor(Integer.class, integerEditor);
}
} // @jve:decl-index=0:visual-constraint="38,9"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -