📄 mainframe.java
字号:
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import javax.swing.*;
import javax.imageio.*;
import java.io.*;
import javax.swing.JLabel;
import java.awt.Window;
import java.sql.*;
import javax.swing.event.*;
import java.awt.MediaTracker;
import javax.swing.border.*;
import java.util.*;
import javax.swing.Timer;
class mainFrame extends JFrame
{
public mainFrame(String name)
{
mainP=new mainPane(name);
newFrame();
}
/*
public mainFrame()
{
mainP=new mainPane("XXX");
newFrame();
}
*/
public void newFrame()
{
setResizable(false);
setBackground(new Color(204,255,255));
Toolkit kit =Toolkit.getDefaultToolkit();
Dimension screenSize=kit.getScreenSize();
int screenWidth=screenSize.width;
int screenHeight=screenSize.height;
setLocation((screenWidth-DEFA_W)/2,(screenHeight-DEFA_H)/2);
setSize(DEFA_W,DEFA_H);
setTitle("酒店客房管理系统");
add(mainP);
setVisible(true);
JMenuBar menub=new JMenuBar();
setJMenuBar(menub);
}
private mainPane mainP;
private final int DEFA_W=500;
private final int DEFA_H=430;
}
class mainPane extends JPanel
{
public mainPane(String name)
{
USERNAME=name;
setBackground(new Color(153,204,204));
Border etched=BorderFactory.createEtchedBorder(EtchedBorder.RAISED);
Border titled=BorderFactory.createTitledBorder(etched,"查询服务");
Border titledkai=BorderFactory.createTitledBorder(etched,"开房服务");
Border titledtui=BorderFactory.createTitledBorder(etched,"退房服务");
setLayout(null);
top t=new top();
timeDate TD=new timeDate();
sele sel=new sele();
kai k=new kai();
tui tui=new tui();
exit ex=new exit();
add(t);
add(TD);
add(sel);
add(k);
add(tui);
add(ex);
sel.setBorder(titled);
k.setBorder(titledkai);
tui.setBorder(titledtui);
t.setBounds(0,0,500,100);
TD.setBounds(0,110,500,25);
sel.setBounds(20,140,130,191);
k.setBounds(180,140,130,191);
tui.setBounds(330,140,130,191);
ex.setBounds(270,330,220,60);
try
{
connDBQ();
}
catch(SQLException e)
{
System.out.println("错误");
e.printStackTrace();
}
}
public void connDBQ() throws SQLException
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e){}
String URL="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=mdb.mdb";//不用建立odbc数据源
conn=DriverManager.getConnection(URL);
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs=stmt.executeQuery("select * from user where name like '"+USERNAME+"'");
try
{
while(rs.next())
{
yuanGongID=rs.getString("yuangongid");
yuanGongName=rs.getString("yuangongname");
}
}
catch(SQLException e){}
System.out.print(USERNAME+" "+yuanGongID+" "+yuanGongName);
stmt.executeUpdate("delete from dangqian");
stmt.executeUpdate("insert into dangqian (name,yuangongid,yuangongname) values ('"+USERNAME+"','"+yuanGongID+"','"+yuanGongName+"')");
}
private class top extends JPanel
{
public top()
{
setLayout(null);
Toolkit kit =Toolkit.getDefaultToolkit();
top=kit.getImage("mainframe.gif");
MediaTracker tracker=new MediaTracker(this);
tracker.addImage(top,0);
try
{
top=ImageIO.read(new File("mainframe.gif"));
}
catch(IOException e)
{
e.printStackTrace();
}
}
public void paintComponent(Graphics g)
{
g.drawImage(top,0,0,500,100,null);
}
private Image top;
}
private class timeDate extends JPanel
{
public timeDate()
{
setBackground(new Color(153,204,204));
timeAction TA=new timeAction();
Timer t=new Timer(1000,TA);
t.start();
}
public void paintComponent(Graphics g)
{
super.paintComponent(g);
Graphics2D g2=(Graphics2D)g;
g2.setPaint(Color.BLACK);
if(hh>18||hh<6)
g2.drawString(USERNAME+": 晚上好",50,15);
else if(hh<10)
g2.drawString(USERNAME+": 早上好",50,15);
else if(hh<12)
g2.drawString(USERNAME+": 上午好",50,15);
else if(hh<15)
g2.drawString(USERNAME+": 中午好",50,15);
else if(hh<19)
g2.drawString(USERNAME+": 下午好",50,15);
g2.setPaint(Color.RED);
g2.drawString("今天是:",210,15);
g2.drawString(year+"",260,15);
g2.drawString("年",293,15);
g2.drawString(month+"",315,15);
g2.drawString("月",324,15);
g2.drawString(day+"",341,15);
g2.drawString("日",356,15);
switch (week)
{
case 1:
g2.drawString("星期 一",376,15);
break;
case 2:
g2.drawString("星期 二",376,15);
break;
case 3:
g2.drawString("星期 三",376,15);
break;
case 4:
g2.drawString("星期 四",376,15);
break;
case 5:
g2.drawString("星期 五",376,15);
break;
case 6:
g2.drawString("星期 六",376,15);
break;
case 0:
g2.drawString("星期 日",376,15);
break;
}
if(hh>9)
g2.drawString(hh+"",430,15);
else
g2.drawString("0"+hh+"",430,15);
g2.drawString(":",446,15);
if(mm>9)
g2.drawString(mm+"",450,15);
else
g2.drawString("0"+mm+"",450,15);
g2.drawString(":",466,15);
if(ss>9)
g2.drawString(ss+"",470,15);
else
g2.drawString("0"+ss+"",470,15);
}
private class timeAction implements ActionListener
{
public void actionPerformed(ActionEvent Event)
{
gregor=new GregorianCalendar();
year=gregor.get(Calendar.YEAR);
month=gregor.get(Calendar.MONTH)+1;
day=gregor.get(Calendar.DAY_OF_MONTH);
week=gregor.get(Calendar.DAY_OF_WEEK)-1;
hh=gregor.get(Calendar.HOUR_OF_DAY);
mm=gregor.get(Calendar.MINUTE);
ss=gregor.get(Calendar.SECOND);
ss=ss+1;
if(ss==60)
{
ss=0;
mm=mm+1;
}
if(mm==60)
{
mm=0;
hh=hh+1;
}
if(hh==24)
{
hh=0;
day=day+1;
day=gregor.get(Calendar.DAY_OF_MONTH);
}
repaint();
}
}
private GregorianCalendar gregor;
private int day;
private int month;
private int year;
private int week;
private int hh;
private int mm;
private int ss;
}
private class sele extends JPanel
{
public sele()
{
setBackground(new Color(153,204,204));
setLayout(null);
JButton kongfang=new JButton("空房查询");
JButton dengji=new JButton("登记查询");
JButton riqi=new JButton("系统设置");
add(kongfang);
add(dengji);
add(riqi);
kongfang.setBounds(10,20,110,40);
dengji.setBounds(10,80,110,40);
riqi.setBounds(10,140,110,40);
kongFangAction KFA=new kongFangAction();
kongfang.addActionListener(KFA);
dengJiAction DJA=new dengJiAction();
dengji.addActionListener(DJA);
}
private class kongFangAction implements ActionListener
{
public void actionPerformed(ActionEvent Event)
{
kongFangChaXun KFCX=new kongFangChaXun();
KFCX.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
KFCX.setVisible(true);
}
}
private class dengJiAction implements ActionListener
{
public void actionPerformed(ActionEvent Event)
{
dengJi dengJiF=new dengJi();
dengJiF.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
dengJiF.setVisible(true);
}
}
}
private class kai extends JPanel
{
public kai()
{
setBackground(new Color(153,204,204));
setLayout(null);
JButton kaifang=new JButton("开房服务");
JButton jiaoxing=new JButton("叫醒服务");
add(kaifang);
add(jiaoxing);
kaifang.setBounds(10,20,110,40);
jiaoxing.setBounds(10,80,110,40);
kaiFangAction KFA=new kaiFangAction();
kaifang.addActionListener(KFA);
}
private class kaiFangAction implements ActionListener
{
public void actionPerformed(ActionEvent Event)
{
kaiFangOk KFOK=new kaiFangOk("");
KFOK.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
KFOK.setVisible(true);
}
}
}
private class tui extends JPanel
{
public tui()
{
setBackground(new Color(153,204,204));
setLayout(null);
JButton tuifang=new JButton("退房结帐");
JButton xufang=new JButton("客房续期");
add(tuifang);
add(xufang);
tuifang.setBounds(10,20,110,40);
xufang.setBounds(10,80,110,40);
tuiFangAction TFA=new tuiFangAction();
tuifang.addActionListener(TFA);
}
private class tuiFangAction implements ActionListener
{
public void actionPerformed(ActionEvent Event)
{
String Tell=null;
String tell=null;
try
{
rs=stmt.executeQuery("select * from dengji");
while(rs.next())
{
if(Tell==null)
Tell=rs.getString("fangjianhao");
else
Tell=Tell+rs.getString("fangjianhao");
}
}
catch(SQLException e){}
try
{
tell=JOptionPane.showInputDialog("请输入客房号");
}
catch(NumberFormatException e){}
//if(tell!=0)
//{
try
{
if(Tell.indexOf(tell)<0)
{
JOptionPane.showMessageDialog(null,"没有此客房或此客房未住人");
}
else
{
//tuiFang TF=new tuiFang(tell);
//TF.
}
}
catch(NumberFormatException e){}
catch(NullPointerException ee){}
}
}
}
private class exit extends JPanel
{
public exit()
{
setBackground(new Color(153,204,204));
setLayout(null);
JButton exit=new JButton("退出系统");
JButton XiuGai=new JButton("修改密码");
add(exit);
add(XiuGai);
exit.setBounds(110,10,100,40);
XiuGai.setBounds(10,10,90,40);
quxiaoAction EXAction=new quxiaoAction();
XiuGaiAction XGAction=new XiuGaiAction();
exit.addActionListener(EXAction);
XiuGai.addActionListener(XGAction);
}
}
private class quxiaoAction implements ActionListener //“取消”的事件监视器
{
public void actionPerformed(ActionEvent Event)
{
try
{
stmt.executeUpdate("delete from dangqian where name like '"+USERNAME+"'");
}
catch(SQLException e){}
System.exit(0); //退出程序
}
}
private class XiuGaiAction implements ActionListener
{
public void actionPerformed(ActionEvent Event)
{
xiuGai XIUGAI=new xiuGai(USERNAME);
XIUGAI.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
XIUGAI.setVisible(true);
}
}
private Connection conn=null;
private Statement stmt=null;
private ResultSet rs=null;
private String USERNAME;
private String yuanGongID;
private String yuanGongName;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -