PDA

View Full Version : Tham khảo Quản lý thư viện sách



nguyenniit
27-11-2007, 10:06
////
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.util.*;

public class nhom1 extends JFrame implements ActionListener
{
public static void main(String[] argv)
{
nhom1 mainApp = new nhom1();
}

public nhom1()
{
super("Books Manager Project Group I");
setBounds(0, 0, 600, 500);
getContentPane().setLayout(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);


menuBar = new JMenuBar();
menuBar.setBounds(0, 0, 1280, 25);

///////////////////////MENU Main//////////////////////////////////////
// Tao cac menu chinh .....................................
mainMenu = new JMenu("Thong tin chinh");
mainMenu.setMnemonic('M');

quitItem = new JMenuItem("Thoat");
quitItem.addActionListener(this);

aboutItem = new JMenuItem("Thanh vien");
aboutItem.addActionListener(this);

lhItem = new JMenuItem("Lien he");
lhItem.addActionListener(this);

// Menu phu cua menu Thong tin chung......................................
mainMenu.add(aboutItem);
mainMenu.addSeparator();
mainMenu.add(lhItem);
mainMenu.addSeparator();
mainMenu.add(quitItem);
//mainMenu.add(lienheItem);

/////////////////////// MENU Nhap lieu //////////////////////////////////////////
// Tao cac menu con cua Nhap lieu............................
NhaplieuBarMenu = new JMenu("Nhap kho");
NhaplieuBarMenu.setMnemonic('O');
NhaplieuItem = new JMenuItem("Nhap du lieu");
NhaplieuItem.addActionListener(this);


/////////////////////// Menu sua Sach ///////////////////////////////////////
ThemsachBarMenu = new JMenu("Sua Sach");
ThemsachBarMenu.setMnemonic('A');
SuasachItem = new JMenuItem("Sua du lieu");
SuasachItem.addActionListener(this);




/////////////////////// Menu Xem sach //////////////////////////////////////////

XemsachBarMenu = new JMenu("Xem Sach");
XemsachBarMenu.setMnemonic('S');

XemsachItem = new JMenuItem("Xem Chi tiet");
XemsachItem.addActionListener(this);
// Menu Tim Sach..........................................
TimsachBarMenu = new JMenu("Tim sach");
TimsachBarMenu.setMnemonic('T');


TimtheotenSub = new JMenuItem("Tim theo Ma sach");
TimtheotenSub.addActionListener(this);

TimtheomaSub = new JMenuItem("Tim theo Ten sach");
TimtheomaSub.addActionListener(this);
/// Menu The Loai //////////////////////////////////

TheloaiBarMenu = new JMenu("The Loai");
TheloaiBarMenu.setMnemonic('M');


//Create the report Order-Sales, Import-Export and Inventory Stock
TruyenSub = new JMenu("Truyen");
TienganhSub = new JMenu("Tieng Anh");
VanhocSub = new JMenu("Van Hoc");
reportTinhocSub = new JMenu("Tin Hoc");


// Create the Report Order submenuitem...
TruyennganItem = new JMenuItem("Truyen ngan");
TruyennganItem.addActionListener(this);

TieuthuyetItem = new JMenuItem("Tieu thuyet");
TieuthuyetItem.addActionListener(this);

TienganhGTItem = new JMenuItem("Tieng anh giao tiep");
TienganhGTItem.addActionListener(this);

TienganhCNItem = new JMenuItem("Tieng anh chuyen nganh");
TienganhCNItem.addActionListener(this);

VanhocNNItem = new JMenuItem("Van Hoc nuoc ngoai");
VanhocNNItem.addActionListener(this);

reportvanhocItem = new JMenuItem("Van Hoc Viet Nam");
reportvanhocItem.addActionListener(this);

reportTinhoc1Item = new JMenuItem("Tin hoc can ban");
reportTinhoc1Item.addActionListener(this);

reportTinhoc2Item = new JMenuItem("Tin hoc nang cao");
reportTinhoc2Item.addActionListener(this);

////////////////////Tieu de cua Form chinh//////////////////////////////////////////////////
lblTitleInput= new JLabel("NHAP DU LIEU");
lblTitleInput.setForeground(new Color(255, 0, 0));
lblTitleInput.setLocation(225, 100);
lblTitleInput.setSize(lblTitleInput.getPreferredSi ze());


lblTitleSua= new JLabel("PHAN SUA DU LIEU");
lblTitleSua.setForeground(new Color(255, 0, 0));
lblTitleSua.setLocation(225, 100);
lblTitleSua.setSize(lblTitleSua.getPreferredSize() );


//////////////////////Tieu de cua Form Phu/////////////////////////////////

lblTitleTim= new JLabel("PHAN TIM DU LIEU");
lblTitleTim.setForeground(new Color(255, 0, 0));
lblTitleTim.setLocation(250, 75);
lblTitleTim.setSize(lblTitleTim.getPreferredSize() );



lblTitleXem= new JLabel("PHAN XEM DU LIEU");
lblTitleXem.setForeground(new Color(255, 0, 0));
lblTitleXem.setLocation(250, 75);
lblTitleXem.setSize(lblTitleXem.getPreferredSize() );
//////////////
lblNhapData= new JLabel("Ngay Nhap:");
lblNhapData.setForeground(new Color(0, 0, 255));
lblNhapData.setLocation(100, 175);
lblNhapData.setSize(lblNhapData.getPreferredSize() );

txtNhapData = new JTextField(15);
txtNhapData.setLocation(200, 175);
txtNhapData.setSize(txtNhapData.getPreferredSize() );


////////////////////////////label va Field cua Ma sach////////////////////
lblMaSach= new JLabel("Ma sach:");
lblMaSach.setForeground(new Color(0, 0, 255));
lblMaSach.setLocation(100, 150);
lblMaSach.setSize(lblNhapData.getPreferredSize());

txtMaSach = new JTextField(15);
txtMaSach.setLocation(200, 150);
txtMaSach.setSize(txtMaSach.getPreferredSize());

////////////////////////////Label and Text Field of Ten sach ////////////////////
lblTensach= new JLabel("Ten sach:");
lblTensach.setForeground(new Color(0, 0, 255));
lblTensach.setLocation(100, 200);
lblTensach.setSize(lblTensach.getPreferredSize());

txtTensach = new JTextField(15);
txtTensach.setLocation(200, 200);
txtTensach.setSize(txtTensach.getPreferredSize());

////////////////////////////Label and Text Field Don vi tinh ////////////////////
lblDonvitinh= new JLabel("Don vi tinh:");
lblDonvitinh.setForeground(new Color(0, 0, 255));
lblDonvitinh.setLocation(100, 225);
lblDonvitinh.setSize(lblDonvitinh.getPreferredSize ());

txtDonvitinh = new JTextField(15);
txtDonvitinh.setLocation(200, 225);
txtDonvitinh.setSize(txtDonvitinh.getPreferredSize ());

////////////////////////////Label and Text Field so luong ////////////////////
lblSoluong= new JLabel("So luong:");
lblSoluong.setForeground(new Color(0, 0, 255));
lblSoluong.setLocation(100, 250);
lblSoluong.setSize(lblSoluong.getPreferredSize());

txtSoluong = new JTextField(15);
txtSoluong.setLocation(200, 250);
txtSoluong.setSize(txtSoluong.getPreferredSize());

////////////////////////////Label and Text Field Don gia ////////////////////
lblDongia= new JLabel("Don Gia:");
lblDongia.setForeground(new Color(0, 0, 255));
lblDongia.setLocation(100, 275);
lblDongia.setSize(lblDongia.getPreferredSize());

txtDongia = new JTextField(15);
txtDongia.setLocation(200, 275);
txtDongia.setSize(txtDongia.getPreferredSize());


///////////////////////Button Nhap du lieu ///////////////////////////////////

buttonInput= new JButton("Nhap");
buttonInput.addActionListener(this);

buttonInput.setForeground(new Color(0, 0, 255));
buttonInput.setLocation(150, 325);
buttonInput.setSize(buttonInput.getPreferredSize() );
buttonInput.setToolTipText("Nhap du lieu");

////////////////////////////Button Clear////////////////////
buttonClear= new JButton("Xoa");
buttonClear.addActionListener(this);

buttonClear.setForeground(new Color(0, 0, 255));
buttonClear.setLocation(225, 325);
buttonClear.setSize(buttonClear.getPreferredSize() );
buttonClear.setToolTipText("Nhap Lai");

////////////////////////////Button Cancel////////////////////
buttonCancel= new JButton("Huy Bo");
buttonCancel.addActionListener(this);

buttonCancel.setForeground(new Color(0, 0, 255));
buttonCancel.setLocation(300, 325);
buttonCancel.setSize(buttonCancel.getPreferredSize ());
buttonCancel.setToolTipText("Huy Bo");

////////////////////////////Button Tim sach ////////////////////

buttonTim= new JButton("Tim");
buttonTim.addActionListener(this);

buttonTim.setForeground(new Color(0, 0, 255));
buttonTim.setLocation(150, 325);
buttonTim.setSize(buttonTim.getPreferredSize());
buttonTim.setToolTipText("Tim du lieu");

buttonXoa= new JButton("Xoa");
buttonXoa.addActionListener(this);

buttonXoa.setForeground(new Color(0, 0, 255));
buttonXoa.setLocation(225, 325);
buttonXoa.setSize(buttonXoa.getPreferredSize());
buttonXoa.setToolTipText("Xoa");

buttonHuy= new JButton("Huy Bo");
buttonHuy.addActionListener(this);

buttonHuy.setForeground(new Color(0, 0, 255));
buttonHuy.setLocation(300, 325);
buttonHuy.setSize(buttonHuy.getPreferredSize());
buttonHuy.setToolTipText("Huy Bo");


/////////////// Button Xem //////////////////////////////////////////////////

buttonPrevious= new JButton("Prev");
buttonPrevious.addActionListener(this);

buttonPrevious.setForeground(new Color(0, 0, 255));
buttonPrevious.setLocation(150, 325);
buttonPrevious.setSize(buttonPrevious.getPreferred Size());
buttonPrevious.setToolTipText("Xem du lieu");

buttonNext= new JButton("Next");
buttonNext.addActionListener(this);

buttonNext.setForeground(new Color(0, 0, 255));
buttonNext.setLocation(225, 325);
buttonNext.setSize(buttonNext.getPreferredSize());
buttonNext.setToolTipText("Xem tiep");

buttonViewHuy= new JButton("Huy Bo");
buttonViewHuy.addActionListener(this);

buttonViewHuy.setForeground(new Color(0, 0, 255));
buttonViewHuy.setLocation(300, 325);
buttonViewHuy.setSize(buttonViewHuy.getPreferredSi ze());
buttonViewHuy.setToolTipText("Huy Bo");

/////////////// Button Sua //////////////////////////////////////////////////

buttonSua= new JButton("Sua");
buttonSua.addActionListener(this);

buttonSua.setForeground(new Color(0, 0, 255));
buttonSua.setLocation(150, 325);
buttonSua.setSize(buttonSua.getPreferredSize());
buttonSua.setToolTipText("sua du lieu");

buttonSuaLuu= new JButton("Luu");
buttonSuaLuu.addActionListener(this);

buttonSuaLuu.setForeground(new Color(0, 0, 255));
buttonSuaLuu.setLocation(225, 325);
buttonSuaLuu.setSize(buttonSuaLuu.getPreferredSize ());
buttonSuaLuu.setToolTipText("Luu du lieu");

buttonSuaHuy= new JButton("Huy Bo");
buttonSuaHuy.addActionListener(this);

buttonSuaHuy.setForeground(new Color(0, 0, 255));
buttonSuaHuy.setLocation(300, 325);
buttonSuaHuy.setSize(buttonSuaHuy.getPreferredSize ());
buttonSuaHuy.setToolTipText("Huy Bo");

// Thanh phan tren thanh MENU BAR/////////////////////////////////////////////////
menuBar.add(mainMenu);
menuBar.add(NhaplieuBarMenu);

menuBar.add(TheloaiBarMenu);
menuBar.add(TimsachBarMenu);
menuBar.add(XemsachBarMenu);
menuBar.add(ThemsachBarMenu);

// Add nhung muc con cua menu Bar/////////////////////////////////////
NhaplieuBarMenu.add(NhaplieuItem);
ThemsachBarMenu.add(SuasachItem);

TimsachBarMenu.add(TimtheotenSub);

TimsachBarMenu.add(TimtheomaSub);

XemsachBarMenu.add(XemsachItem);


// Add nhung menu con cua The Loai //////////////////////////////////////////////////.
TheloaiBarMenu.add(TruyenSub);
TheloaiBarMenu.add(TienganhSub);
TheloaiBarMenu.add(VanhocSub);
TheloaiBarMenu.add(reportTinhocSub);



// Add nhung menu con cua Truyen /////////////////////////////
TruyenSub.add(TruyennganItem);
TruyenSub.add(TieuthuyetItem);

// Add Thanh phan con cua Tieng anh ........................
TienganhSub.add(TienganhGTItem);
TienganhSub.add(TienganhCNItem);

// Add thanh phan con cua Van hoc................................
VanhocSub.add(VanhocNNItem);
VanhocSub.add(reportvanhocItem);
// Add thanh phan con cua Tin hoc.................................
reportTinhocSub.add(reportTinhoc1Item);
reportTinhocSub.add(reportTinhoc2Item);

getContentPane().add(menuBar);

setVisible(true);
}

public void actionPerformed(ActionEvent e)
{
if(e.getSource() == aboutItem)
{
JOptionPane.showMessageDialog(this, "Thanh Vien \n----- (^_^) ---------------------------------- (^_^) ----- \nDinh Thi Hoa \nNgo Nhu Huong \nNguyen Ngoc Bich \nNguyen Vu Trung \nNguyen Quang Nguyen \n----- (^_^) -------------------------------- (^_^) ----- \n Teacher: Nguyen Trong Anh","Thong Tin",JOptionPane.INFORMATION_MESSAGE);

}

else if(e.getSource() == lhItem)
{
JOptionPane.showMessageDialog(this, "http://flowers.itprovietnam.com","Lien He",JOptionPane.INFORMATION_MESSAGE);

}

else if(e.getSource() == quitItem)
{
int result = JOptionPane.showConfirmDialog(this, "Ban co chac chan thoat?");

if(result == JOptionPane.YES_OPTION)
{
//getContentPane().setBackground(new Color(152, 168, 165));
System.exit(1);
}

}


else if(e.getSource() == NhaplieuItem)
{
//////////////////////Phan Giao dien cua Form chinh //////////////////////////////////////////////////////
getContentPane().add(lblTitleInput);

getContentPane().add(lblMaSach);
getContentPane().add(txtMaSach);

getContentPane().add(lblNhapData);
getContentPane().add(txtNhapData);


getContentPane().add(lblTensach);
getContentPane().add(txtTensach);

getContentPane().add(lblDonvitinh);
getContentPane().add(txtDonvitinh);

getContentPane().add(lblSoluong);
getContentPane().add(txtSoluong);

getContentPane().add(lblDongia);
getContentPane().add(txtDongia);

getContentPane().add(buttonInput);
getContentPane().add(buttonClear);
getContentPane().add(buttonCancel);

getContentPane().setBackground(new Color(234, 222, 127));

//////////////////// Chuc nang cua Nut Cancel //////////////////////////////////////////////////////
lblTitleInput.setVisible(true);

lblMaSach.setVisible(true);
txtMaSach.setVisible(true);

lblNhapData.setVisible(true);
txtNhapData.setVisible(true);

lblTensach.setVisible(true);
txtTensach.setVisible(true);

lblDonvitinh.setVisible(true);
txtDonvitinh.setVisible(true);

lblSoluong.setVisible(true);
txtSoluong.setVisible(true);

lblDongia.setVisible(true);
txtDongia.setVisible(true);

buttonInput.setVisible(true);
buttonClear.setVisible(true);
buttonCancel.setVisible(true);

}
else if(e.getSource() == buttonCancel)
{

////////////////////// Chuc nang cua Nut Clear //////////////////////////////////////////////////////
lblTitleInput.setVisible(false);

lblMaSach.setVisible(false);
txtMaSach.setVisible(false);

lblNhapData.setVisible(false);
txtNhapData.setVisible(false);

lblTensach.setVisible(false);
txtTensach.setVisible(false);

lblDonvitinh.setVisible(false);
txtDonvitinh.setVisible(false);

lblSoluong.setVisible(false);
txtSoluong.setVisible(false);

lblDongia.setVisible(false);
txtDongia.setVisible(false);

buttonInput.setVisible(false);
buttonClear.setVisible(false);
buttonCancel.setVisible(false);

getContentPane().setBackground(new Color(152, 168, 165));
}
else if(e.getSource() == buttonClear)
{
txtMaSach.setText("");

txtNhapData.setText("");


txtTensach.setText("");

txtDonvitinh.setText("");

txtSoluong.setText("");

txtDongia.setText("");
}
/////////////////////// Phan Nhap du lieu .................................................. ......
else if(e.getSource() == buttonInput)
{

if(txtMaSach.getText().compareTo("") == 0 ||txtNhapData.getText().compareTo("") == 0 || txtTensach.getText().compareTo("") == 0 || txtDonvitinh.getText().compareTo("") == 0 || txtSoluong.getText().compareTo("") == 0 || txtDongia.getText().compareTo("") == 0)
{
JOptionPane.showMessageDialog(this, "Ban phai nhap du thong tin! Yeu cau nhap lai!","thong bao loi",JOptionPane.INFORMATION_MESSAGE);
}

else
{
try
{


double MaSach1 = Double.parseDouble(txtMaSach.getText().trim());

double Soluong1 = Double.parseDouble(txtSoluong.getText().trim());

double Dongia1 = Double.parseDouble(txtDongia .getText().trim());

String NhapData1= new String(txtNhapData.getText());

String Tensach1= new String(txtTensach.getText());

String Donvitinh1= new String(txtDonvitinh.getText());
k=1;
try
{
FileInputStream f = new FileInputStream("luusach.dat");
int ch=0;
while( (ch=f.read()) != -1)
{

}
f.close();
}
catch(FileNotFoundException efnfe)
{
int resultFile = JOptionPane.showConfirmDialog(this, "File khong ton tai. Tao file moi khong?");

Nhaplieu[] nhaplieuFile=new Nhaplieu[1];
nhaplieuFile[0] = new Nhaplieu(MaSach1, NhapData1, Tensach1, Donvitinh1,Soluong1, Dongia1);

if(resultFile == JOptionPane.YES_OPTION)
{
ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream("luusach.dat"));
out.writeObject(nhaplieuFile);
out.close();
JOptionPane.showMessageDialog(this, "Nhap lieu thanh cong","Thong bao",JOptionPane.INFORMATION_MESSAGE);
k=2;
}
if(resultFile == JOptionPane.NO_OPTION)
{
JOptionPane.showMessageDialog(this, "Du lieu chua duoc tao!!!","Thong bao",JOptionPane.INFORMATION_MESSAGE); }
}
catch(IOException eio)
{
System.out.println("Khong doc duoc file");
}

if(k!=2)
{
ObjectInputStream in = new ObjectInputStream(new FileInputStream("luusach.dat"));
Nhaplieu[] nhap = (Nhaplieu[])in.readObject();
in.close();

Nhaplieu[] nhaplieu = new Nhaplieu[nhap.length + 1];
for(int i=0;i<nhap.length;i++)
{
nhaplieu[i]=nhap[i];
}

int check=0;
for(int i=0;i<nhap.length;i++)
{
if(nhap[i].getmaSach() == MaSach1)
{

check=1;
}

}

nhaplieu[nhaplieu.length - 1] = new Nhaplieu( MaSach1, NhapData1,Tensach1, Donvitinh1,Soluong1, Dongia1);

if(check != 1)
{

ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream("luusach.dat"));
out.writeObject(nhaplieu);
out.close();

JOptionPane.showMessageDialog(this, "Ban da nhap thanh cong!","Thong bao loi",JOptionPane.INFORMATION_MESSAGE);
}
else
{
JOptionPane.showMessageDialog(this, "Ma may nay da ton tai, ban hay chon ma khac!","Co loi xay ra",JOptionPane.INFORMATION_MESSAGE);
}
}
ObjectInputStream in = new ObjectInputStream(new FileInputStream("luusach.dat"));
Nhaplieu[] nhaptest = (Nhaplieu[]) in.readObject();
in.close();

for(int j=0;j<nhaptest.length;j++)
{
nhaptest[j].InSach(j);

System.out.println(nhaptest[j].getmaSach());

System.out.println(nhaptest.length);
}
}
catch (NumberFormatException enfe)
{
System.err.println("NumberFormatException");
}
catch (Exception ehdmh)
{
ehdmh.printStackTrace();
}
txtMaSach.setText("");
txtNhapData.setText("");

txtTensach.setText("");

txtDonvitinh.setText("");

txtSoluong.setText("");

txtDongia.setText("");
}
}

//////////////// Form cua phan Phan Sua /////////////////

else if(e.getSource() == SuasachItem)
{


getContentPane().add(lblTitleSua);

getContentPane().add(lblMaSach);
getContentPane().add(txtMaSach);

getContentPane().add(lblNhapData);
getContentPane().add(txtNhapData);

getContentPane().add(lblTensach);
getContentPane().add(txtTensach);

getContentPane().add(lblDonvitinh);
getContentPane().add(txtDonvitinh);

getContentPane().add(lblSoluong);
getContentPane().add(txtSoluong);

getContentPane().add(lblDongia);
getContentPane().add(txtDongia);

getContentPane().add(buttonSua);
getContentPane().add(buttonSuaLuu);
getContentPane().add(buttonSuaHuy);

getContentPane().setBackground(new Color(174, 201, 163));

//////////////////////Show the Label, TextField, Button//////////////////////////////////////////////////////
lblTitleSua.setVisible(true);

lblMaSach.setVisible(true);
txtMaSach.setVisible(true);

lblNhapData.setVisible(true);
txtNhapData.setVisible(true);



lblTensach.setVisible(true);
txtTensach.setVisible(true);

lblDonvitinh.setVisible(true);
txtDonvitinh.setVisible(true);

lblSoluong.setVisible(true);
txtSoluong.setVisible(true);

lblDongia.setVisible(true);
txtDongia.setVisible(true);

buttonSua.setVisible(true);
buttonSuaLuu.setVisible(true);
buttonSuaHuy.setVisible(true);

}
else if(e.getSource() == buttonSuaHuy)
{

//////////////////////Hide the Label, TextField, Button//////////////////////////////////////////////////////
lblTitleSua.setVisible(false);

lblMaSach.setVisible(false);
txtMaSach.setVisible(false);

lblNhapData.setVisible(false);
txtNhapData.setVisible(false);



lblTensach.setVisible(false);
txtTensach.setVisible(false);

lblDonvitinh.setVisible(false);
txtDonvitinh.setVisible(false);

lblSoluong.setVisible(false);
txtSoluong.setVisible(false);

lblDongia.setVisible(false);
txtDongia.setVisible(false);

buttonSua.setVisible(false);
buttonSuaLuu.setVisible(false);
buttonSuaHuy.setVisible(false);

getContentPane().setBackground(new Color(152, 168, 165));
}

thuyhong47th
05-01-2009, 21:00
Theo tôi khi làm một phần mềm quản lý thì bạn nên kết hợp với cơ sở dữ liệu thì tốt hơn!

blackcute
20-04-2010, 21:33
Bài này hình như thiếu một file nữa hay sao ấy, tự nhiên ko hieu nhaplieu ở đâu ra