?? newbookreport.java
字號:
//新書通報
import java.awt.*;
import javax.swing.*;
import javax.swing.table.*;
import java.awt.event.*;
import javax.swing.event.*;
import java.sql.*;
import java.io.*;
import java.util.*;
import java.util.Date;
import java.text.SimpleDateFormat;
public class NewBookReport extends JFrame implements ActionListener
{ public JButton btn;
public JPanel jp1;
public JLabel lb1;
public JRadioButton jrb1,jrb2,jrb3;
public ButtonGroup bg;
public JComboBox jcb;
public JTable jta;
public Date nowTime;
public SimpleDateFormat matter;
public Calendar calendar;
public String year1,month1,day1,year,month,day,month2,week1,week2,week3,time,time1,time2;
public String count[];
public Statement stmt;
public Connection con;
public JFrame frame;
public Object rowData[][],rowData1[][];
public NewBookReport()
{JFrame.setDefaultLookAndFeelDecorated(true);
frame=new JFrame("新書通報");
ImageIcon icon=new ImageIcon("images/home.gif");
frame.setIconImage(icon.getImage());
frame.setResizable(false);
Font font1=new Font("宋體",Font.PLAIN,15);
Font font2=new Font("宋體",Font.PLAIN,20);
Container content=frame.getContentPane();
content.setLayout(null);
//初始化各個組件
jrb1=new JRadioButton("近一周");
jrb2=new JRadioButton("近一個月");
jrb3=new JRadioButton("近三個月");
jrb1.setSelected(true);
ButtonGroup bg=new ButtonGroup();
bg.add(jrb1);
bg.add(jrb2);
bg.add(jrb3);
lb1=new JLabel("新書分類:");
jcb=new JComboBox();
try{ View();}
catch(SQLException eg){}
btn=new JButton("查詢",new ImageIcon("images/find.gif"));
Object columnNames[]={"書名","編號","條形碼","分類法","作者","類型","價格","出版社名稱","書架名稱","頁碼","出版日期","入庫日期","庫存量","借閱次數","圖書狀態","操作員","摘要"};
rowData=new Object[100][17];
jta=new JTable(rowData,columnNames);
jta.setRowHeight(20);
jta.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
jta.setPreferredScrollableViewportSize(new Dimension(500,30));
JScrollPane scrollPane=new JScrollPane(jta,
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
//--設置各個組件的字體--
lb1.setFont(font1);
jrb1.setFont(font1);
jrb2.setFont(font1);
jrb3.setFont(font1);
jcb.setFont(font1);
btn.setFont(font1);
jta.setFont(font1);
//--設置各個組件的大小和位置--
jrb1.setBounds(250,10,100,25);
jrb2.setBounds(360,10,100,25);
jrb3.setBounds(480,10,100,25);
lb1.setBounds(212,48,80,25);
jcb.setBounds(282,48,180,25);
btn.setBounds(480,40,120,40);
scrollPane.setBounds(2,85,785,537);
//設置各個組件的事件
jrb1.addActionListener(this);
jrb2.addActionListener(this);
jrb3.addActionListener(this);
btn.addActionListener(this);
jcb.addActionListener(this);
//添加各個組件
jp1=new JPanel();
jp1.setLayout(null);
jp1.add(jrb1);
jp1.add(jrb2);
jp1.add(jrb3);
jp1.add(lb1);
jp1.add(jcb);
jp1.add(btn);
jp1.add(scrollPane);
jp1.setBorder(BorderFactory.createLoweredBevelBorder());
jp1.setBounds(1,1,790,623);
content.add(jp1);
//定義日期
nowTime=new Date();
matter=new SimpleDateFormat("yyyy-MM-dd");
calendar=Calendar.getInstance();
calendar.setTime(new Date());
year1=String.valueOf(calendar.get(Calendar.YEAR));
month1=String.valueOf(calendar.get(Calendar.MONTH)+1);
day=String.valueOf(calendar.get(Calendar.DAY_OF_MONTH));
day1=String.valueOf(calendar.get(Calendar.DAY_OF_MONTH)-7);//近一周
month=String.valueOf(calendar.get(Calendar.MONTH)-2);//近三月
month2=String.valueOf(calendar.get(Calendar.MONTH));//近一月
if(month1.length()==1)
{time="0"+month1;}
if(month2.length()==1)
week1=year1+"-"+time+"-"+day1;
{time1="0"+month2;}
if(month.length()==1)
if(time1.equals("00"))
{time1=String.valueOf(12-Integer.parseInt(month));year1=String.valueOf(Integer.parseInt(year1)-1);}
week2=year1+"-"+time1+"-"+day;
{time2="0"+month;}
if(time2.equals("00"))
{time2=String.valueOf(12-Integer.parseInt(month));year1=String.valueOf(Integer.parseInt(year1)-1);}
week3=year1+"-"+time2+"-"+day;
frame.setSize(800,658);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{Object obj=e.getSource();
if(obj==btn)
{try{ setnull();}
catch(SQLException eg){}
try{ Query();}
catch(SQLException eg){}
}
}
////////////////////////////////查詢圖書類型設置信息代碼///////////////////////////////////////////////
public void View() throws SQLException
{
try{
String strurl =
"jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=DataBase/Library.mdb";
try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}
catch (ClassNotFoundException eg) {}
con= DriverManager.getConnection(strurl);
Statement stmt= con.createStatement();
ResultSet rs = stmt.executeQuery("select * from 圖書類型設置 ORDER BY 編號");
while(rs.next())
{String bianhao=rs.getString(1);
String typename=rs.getString(2);
jcb.addItem(typename);
}
con.close();
}
catch(Exception es)
{es.printStackTrace();}
}
////////////////////////////////查詢新書代碼///////////////////////////////////////////////
public void Query() throws SQLException
{ int i=0;
String tsmc,bh,txm,flf,zz,lx,jg,cbs,ym,sjmc,cbrq,rkrq,tszt,kcl,jycs,czy,zy;
String strurl =
"jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=DataBase/Library.mdb";
try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}
catch (ClassNotFoundException e) {}
con= DriverManager.getConnection(strurl);
Statement stmt = con.createStatement();
ResultSet rs=stmt.executeQuery("select * from 圖書資料 where 類型 ='"+jcb.getSelectedItem()+"'");
while(rs.next())
{ tsmc=rs.getString("圖書名稱");bh=rs.getString("編號");txm=rs.getString("條形碼");
flf=rs.getString("分類法");zz=rs.getString("作者");lx=rs.getString("類型");
jg=rs.getString("價格");cbs=rs.getString("出版社");ym=rs.getString("頁碼");
sjmc=rs.getString("書架名稱");cbrq=rs.getString("出版日期");rkrq=rs.getString("入庫日期");
kcl=rs.getString("庫存量");jycs=rs.getString("借閱次數");tszt=rs.getString("圖書狀態");czy=rs.getString("操作員");zy=rs.getString("摘要");
if(jrb1.isSelected())
{if(rkrq.compareTo(week1)>0)
{rowData[i][0]=tsmc;rowData[i][1]=bh;rowData[i][2]=txm;
rowData[i][3]=flf;rowData[i][4]=zz;rowData[i][5]=lx;
rowData[i][6]=jg;rowData[i][7]=cbs;rowData[i][8]=ym;
rowData[i][9]=sjmc;rowData[i][10]=cbrq;rowData[i][11]=rkrq;
rowData[i][12]=kcl;rowData[i][13]=jycs;rowData[i][14]=tszt;
rowData[i][15]=czy;rowData[i][16]=zy;i++;
}
btn.setToolTipText(week1);
}
else if(jrb2.isSelected())
{if(rkrq.compareTo(week2)>0)
{rowData[i][0]=tsmc;rowData[i][1]=bh;rowData[i][2]=txm;
rowData[i][3]=flf;rowData[i][4]=zz;rowData[i][5]=lx;
rowData[i][6]=jg;rowData[i][7]=cbs;rowData[i][8]=ym;
rowData[i][9]=sjmc;rowData[i][10]=cbrq;rowData[i][11]=rkrq;
rowData[i][12]=kcl;rowData[i][13]=jycs;rowData[i][14]=tszt;
rowData[i][15]=czy;rowData[i][16]=zy;i++;
}
btn.setToolTipText(week2);
}
else if(jrb3.isSelected())
{if(rkrq.compareTo(week3)>0)
{rowData[i][0]=tsmc;rowData[i][1]=bh;rowData[i][2]=txm;
rowData[i][3]=flf;rowData[i][4]=zz;rowData[i][5]=lx;
rowData[i][6]=jg;rowData[i][7]=cbs;rowData[i][8]=ym;
rowData[i][9]=sjmc;rowData[i][10]=cbrq;rowData[i][11]=rkrq;
rowData[i][12]=kcl;rowData[i][13]=jycs;rowData[i][14]=tszt;
rowData[i][15]=czy;rowData[i][16]=zy;i++;
}
btn.setToolTipText(week3);
}
}
}
/////////////////////設置圖書信息表格為空///////////////////////////////////////////////////////////////////
public void setnull() throws SQLException
{int i=0;
try{
String strurl =
"jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=DataBase/Library.mdb";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con= DriverManager.getConnection(strurl);
stmt = con.createStatement();
ResultSet rs=stmt.executeQuery("SELECT * From 圖書資料");
while(rs.next())
{
rowData[i][0]=null;rowData[i][1]=null;rowData[i][2]=null;
rowData[i][3]=null;rowData[i][4]=null;rowData[i][5]=null;
rowData[i][6]=null;rowData[i][7]=null;rowData[i][8]=null;
rowData[i][9]=null;rowData[i][10]=null;rowData[i][11]=null;
rowData[i][12]=null;rowData[i][13]=null;rowData[i][14]=null;
rowData[i][15]=null;rowData[i][16]=null;
i++;
validate();
}
rowData[i][0]=null;rowData[i][1]=null;rowData[i][2]=null;
rowData[i][3]=null;rowData[i][4]=null;rowData[i][5]=null;
rowData[i][6]=null;rowData[i][7]=null;rowData[i][8]=null;
rowData[i][9]=null;rowData[i][10]=null;rowData[i][11]=null;
rowData[i][12]=null;rowData[i][13]=null;rowData[i][14]=null;
rowData[i][15]=null;rowData[i][16]=null;
jta.repaint();
}
catch(Exception g)
{g.printStackTrace();}
}
public static void main(String[]args)
{ try {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
}
catch(Exception e) {
e.printStackTrace();
}
new NewBookReport();
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -