一段桌面程序

/*登陆界面

 */

package com_mwq_login;



import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;


import javax.swing.ComboBoxModel;
import javax.swing.DefaultComboBoxModel;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JComboBox;


import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import javax.swing.WindowConstants;
import javax.swing.SwingUtilities;


import com_mwq_frame.Drinkmain;




public class LoginManage extends JFrame implements ActionListener, MouseListener{
static private JPanel jPanel1;
static private JLabel jLabel3;
static private JLabel jLabel4;
static private JLabel jLabel5;
static private JButton jButton1;
static private JButton jButton2;
static private JPasswordField jPasswordField1;
static private JComboBox jComboBox1;
static private JLabel jLabel6;
static private JPanel jPanel3;
static private JLabel jLabel2;
static private JPanel jPanel2;
static private JLabel jLabel1;


/**
* Auto-generated main method to display this JFrame
*/
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
LoginManage inst = new LoginManage();
}
});
}


//构造方法
public LoginManage() {
super();
initGUI();
}


//为了构造方法东西不要太多
private void initGUI() {
try {
this.setLocation(50,50);
this.setVisible(true);
this.setResizable(false);
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
this.setTitle("登陆");
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
this.setIconImage(new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/yaoshi.jpg")).getImage());
{
jPanel1 = new JPanel();
this.getContentPane().add(jPanel1, BorderLayout.CENTER);
jPanel1.setLayout(null);
jPanel1.setBackground(new java.awt.Color(186, 50, 186));
jPanel1.setPreferredSize(new java.awt.Dimension(475, 400));
{
jLabel1 = new JLabel();
jPanel1.add(jLabel1);
jLabel1.setBounds(0, 0, 484, 129);
jLabel1.setIcon(new ImageIcon(getClass()
.getClassLoader().getResource(
"com_mwq_frame/image/login.jpg")));
}
{
jPanel2 = new JPanel();
jPanel1.add(jPanel2);
jPanel2.setBounds(0, 131, 478, 231);
jPanel2.setBackground(new java.awt.Color(183, 0, 183));
jPanel2.setLayout(null);
{
jLabel2 = new JLabel();
jPanel2.add(jLabel2);
jLabel2.addMouseListener(this);    //对图片监听,如果单击,换图
jLabel2.setBounds(0, 0, 206, 194);
jLabel2.setIcon(new ImageIcon(getClass().getClassLoader()
.getResource("com_mwq_frame/image/welcome 2.gif")));
}
{
jLabel3 = new JLabel();
jPanel2.add(jLabel3);
jLabel3.setText("默认账户:admin");
jLabel3.setBounds(6, 203, 137, 17);
}
{
jLabel4 = new JLabel();
jPanel2.add(jLabel4);
jLabel4.setText("默认密码:admin");
jLabel4.setBounds(143, 203, 130, 17);
}
{
jPanel3 = new JPanel();
jPanel2.add(jPanel3);
jPanel3.setBounds(229, 0, 249, 203);
jPanel3.setBackground(new java.awt.Color(183, 0,
183));
jPanel3.setLayout(null);
{
jLabel5 = new JLabel();
jPanel3.add(jLabel5);
jLabel5.setText("\u767b\u9646\u7528\u6237\uff1a");
jLabel5.setBounds(7, 29, 102, 25);
jLabel5.setFont(new java.awt.Font("新宋体", 1, 18));
}
{
jLabel6 = new JLabel();
jPanel3.add(jLabel6);
jLabel6.setText("\u767b\u9646\u5bc6\u7801\uff1a");
jLabel6.setBounds(7, 77, 103, 17);
jLabel6.setFont(new java.awt.Font("新宋体", 1, 18));
}
{
ComboBoxModel jComboBox1Model = new DefaultComboBoxModel(
new String[] { "请选择", "殷永生" ,"admin"});
jComboBox1 = new JComboBox();
jPanel3.add(jComboBox1);
jComboBox1.setModel(jComboBox1Model);
jComboBox1.setBounds(101, 31, 113, 24);
jComboBox1.addActionListener(this);         //对jComboBox1设置事件监听
}
{
jPasswordField1 = new JPasswordField();
jPanel3.add(jPasswordField1);
jPasswordField1.setBounds(100, 76, 112, 24);
}
{
jButton1 = new JButton();
jPanel3.add(jButton1);
jButton1.setBounds(15, 135, 95, 35);
jButton1.setIcon(new ImageIcon(getClass().getClassLoader()
.getResource("com_mwq_frame/image/sure.jpg")));
jButton1.setMargin(new java.awt.Insets(0, 2,0, 0));
jButton1.setRolloverSelectedIcon(new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/sure.jpg")));
jButton1.setRolloverIcon(new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/sure2.jpg")));
jButton1.addActionListener(this);
}
{
jButton2 = new JButton();
jPanel3.add(jButton2);
jButton2.setBounds(129, 135, 38, 24);
jButton2.setSize(95, 35);
jButton2.setMargin(new java.awt.Insets(0, 2,0, 0));
jButton2.setIcon(new ImageIcon(getClass().getClassLoader()
.getResource("com_mwq_frame/image/tuichu.jpg")));
jButton2.setRolloverIcon(new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/tuichu2.jpg")));
jButton2.setRolloverSelectedIcon(new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/tuichu.jpg")));
jButton2.addActionListener(this);
}
}
}
}
pack();
this.setSize(500, 400);
} catch (Exception e) {
e.printStackTrace();
}

}


//*********************事件处理区域********************
public void actionPerformed(ActionEvent e) {
if(e.getSource()==jButton1){
String str=jComboBox1.getSelectedItem().toString();
char pwd[]=jPasswordField1.getPassword();        //jPasswordField1的返回类型是char
String pwdstring=String.valueOf(pwd);                //将char数组的密码存到string中

//以默认系统管理员的身份登录成功
if(str.equals("admin")&&pwdstring.equals("admin")){
JOptionPane.showMessageDialog(null,"当前登录为默认账号 欢迎使用","恭喜",JOptionPane.INFORMATION_MESSAGE,new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/smill.jpg")));
this.dispose();
new Drinkmain();

}
if(str.equals("殷永生")&&pwdstring.equals("691331")){
JOptionPane.showMessageDialog(null,"当前登录为殷永生 欢迎使用","恭喜",JOptionPane.INFORMATION_MESSAGE,new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/smill.jpg")));
this.dispose();
Drinkmain dm=new Drinkmain();

}else if(str.equals("请选择")){
JOptionPane.showMessageDialog(null,"请选择用户名","友情提示",JOptionPane.INFORMATION_MESSAGE,new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/55.jpg")));
}else if(str.equals("admin")&&!pwdstring.equals("admin")||str.equals("殷永生")&&!pwdstring.equals("691331")){
JOptionPane.showMessageDialog(null,"密码错误,请重新输入","友情提示",JOptionPane.INFORMATION_MESSAGE,new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/55.jpg")));
jPasswordField1.setText("");
}
}
        if(e.getSource()==jButton2){
System.exit(0);
}
       
}


@Override
public void mouseClicked(MouseEvent e) {
if(e.getX()<=206&&e.getX()>=0&&e.getY()>=130&&e.getY()<=325){
jLabel2.setIcon(new ImageIcon(getClass().getClassLoader()
.getResource("com_mwq_frame/image/happy.gif")));
}

}


@Override
public void mouseEntered(MouseEvent e) {
// TODO Auto-generated method stub

}


@Override
public void mouseExited(MouseEvent e) {
// TODO Auto-generated method stub

}


@Override
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub

}


@Override
public void mouseReleased(MouseEvent e) {
// TODO Auto-generated method stub

}





}

/*

*链接数据库处理

*/

package com_mwq_dao;


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;


public class DBC {
public String url="jdbc:mysql://localhost/drink?" +"user=root&password=sa";
     Connection conn=null;
     public static DBC only;
     public static DBC getIntance(){
    if(only==null )
    return new DBC();
    else return only;
     }
     public Connection getConnection(){
    try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn =DriverManager.getConnection(url);
} catch (InstantiationException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
} catch (SQLException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
return conn;
     }
}

/**

*计算器

*/

package com_mwq_Usefultool;


import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;




public class calculator extends JFrame implements ActionListener {// 这里我把JFrame写成Frame,这个错误找了好久
JFrame frame;


private JButton jia = new JButton("+");
private JButton jian = new JButton("-");
private JButton cheng = new JButton("*");
private JButton chu = new JButton("/");
private JButton qiuyi = new JButton("%");
private JButton deng = new JButton("=");
private JButton fu = new JButton("+/-");
private JButton dian = new JButton(".");
private JButton kai = new JButton("sqrt");
private JButton diao = new JButton("1/x");
private JButton aa = new JButton("A");
private JButton bb = new JButton("B");
private JButton cc = new JButton("C");
private JButton dd = new JButton("D");
private JButton ee = new JButton("E");
private JButton ff = new JButton("F");


private TextField k1 = new TextField();
private objConversion convert = new objConversion();


JMenuItem copy, paste, s, t, help, about, me;
JRadioButton sixteen, ten, eight, two;
JButton backspace, ce, c, num0, num1, num2, num3, num4, num5, num6, num7,
num8, num9;
Container cp;


JTextField text;
String copycontent = "";
boolean clickable = true, clear = true;
int all = 0;
double qian;
String fuhao;
int jin = 10, first = 1;


public calculator() {
this.setVisible(true);
setTitle("计算器-殷永生制作");
setSize(400, 300);
setLocation(250, 200);
this.setIconImage(new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/culm.jpg")).getImage());
text = new JTextField(25);
// text.setEnabled(false);
text.setText("0.");
text.setHorizontalAlignment(JTextField.RIGHT);// 从右到左


JPanel cp1 = new JPanel();
JPanel cp2 = new JPanel();
JPanel cp3 = new JPanel();


cp = getContentPane();
cp.add(cp1, "North");
cp.add(cp2, "Center");
cp.add(cp3, "South");


cp1.setLayout(new GridLayout(1, 6));
cp2.setLayout(new GridLayout(2, 4));
cp2.setPreferredSize(new java.awt.Dimension(358, 52));
cp3.setLayout(new GridLayout(6, 6));
cp3.setPreferredSize(new java.awt.Dimension(355, 132));


sixteen = new JRadioButton("十六进制");
sixteen.setVisible(false);
ten = new JRadioButton("十进制", true);
ten.setVisible(false);
eight = new JRadioButton("八进制");
eight.setVisible(false);
two = new JRadioButton("二进制");
two.setVisible(false);
sixteen.addActionListener(this);
ten.addActionListener(this);
eight.addActionListener(this);
two.addActionListener(this);
ButtonGroup btg = new ButtonGroup();


btg.add(sixteen);
btg.add(ten);
btg.add(eight);
btg.add(two);


JTextField t3 = new JTextField(25);
cp1.add(text);
// text.setEnabled(false);
text.setEditable(false);
text.setBackground(new Color(255, 255, 255));


cp2.add(sixteen);
cp2.add(ten);
cp2.add(eight);
cp2.add(two);


ce = new JButton("CE");
ce.setForeground(new Color(255, 0, 0));
ce.addActionListener(this);
c = new JButton("C");
c.setForeground(new Color(255, 0, 0));
c.addActionListener(this);
k1.setVisible(false);
cp2.add(k1);
{
backspace = new JButton("Backspace");
cp2.add(backspace);
backspace.setForeground(new Color(255, 0, 0));
backspace.setMargin(new Insets(0,0,0,0));
backspace.setPreferredSize(new java.awt.Dimension(77, 26));
backspace.setFont(new java.awt.Font("微软雅黑",1,14));
backspace.addActionListener(this);
}
cp2.add(ce);
ce.setFont(new java.awt.Font("微软雅黑",1,14));
cp2.add(c);
c.setFont(new java.awt.Font("微软雅黑",1,14));


num0 = new JButton("0");
num1 = new JButton("1");
num2 = new JButton("2");
num3 = new JButton("3");
num4 = new JButton("4");
num5 = new JButton("5");
num6 = new JButton("6");
num7 = new JButton("7");
num8 = new JButton("8");
num9 = new JButton("9");


cp3.add(num7);
num7.setFont(new java.awt.Font("微软雅黑",1,14));
num7.addActionListener(this);
cp3.add(num8);
num8.setFont(new java.awt.Font("微软雅黑",1,14));
num8.addActionListener(this);
cp3.add(num9);
num9.setFont(new java.awt.Font("微软雅黑",1,14));
num9.addActionListener(this);
cp3.add(chu);
chu.setForeground(new Color(255, 0, 0));
chu.setFont(new java.awt.Font("微软雅黑",1,14));
chu.addActionListener(this);
cp3.add(kai);
kai.setFont(new java.awt.Font("微软雅黑",1,14));
kai.addActionListener(this);
cp3.add(num4);
num4.setFont(new java.awt.Font("微软雅黑",1,14));
num4.addActionListener(this);
cp3.add(num5);
num5.setFont(new java.awt.Font("微软雅黑",1,14));
num5.addActionListener(this);
cp3.add(num6);
num6.setFont(new java.awt.Font("微软雅黑",1,14));
num6.addActionListener(this);
cp3.add(cheng);
cheng.setForeground(new Color(255, 0, 0));
cheng.setFont(new java.awt.Font("微软雅黑",1,14));
cheng.addActionListener(this);
cp3.add(qiuyi);
qiuyi.setFont(new java.awt.Font("微软雅黑",1,14));
qiuyi.addActionListener(this);
cp3.add(num1);
num1.setFont(new java.awt.Font("微软雅黑",1,14));
num1.addActionListener(this);
cp3.add(num2);
num2.setFont(new java.awt.Font("微软雅黑",1,14));
num2.addActionListener(this);
cp3.add(num3);
num3.setFont(new java.awt.Font("微软雅黑",1,14));
num3.addActionListener(this);
cp3.add(jian);
jian.setForeground(new Color(255, 0, 0));
jian.setFont(new java.awt.Font("微软雅黑",1,14));
jian.addActionListener(this);
cp3.add(diao);
diao.setFont(new java.awt.Font("微软雅黑",1,14));
diao.addActionListener(this);
cp3.add(num0);
num0.setFont(new java.awt.Font("微软雅黑",1,14));
num0.addActionListener(this);
cp3.add(fu);
fu.setFont(new java.awt.Font("微软雅黑",1,14));
fu.addActionListener(this);
cp3.add(dian);
dian.setFont(new java.awt.Font("微软雅黑",1,14));
dian.addActionListener(this);
cp3.add(jia);
jia.setForeground(new Color(255, 0, 0));
jia.setFont(new java.awt.Font("微软雅黑",1,14));
jia.addActionListener(this);
cp3.add(deng);
deng.setForeground(new Color(255, 0, 0));
deng.setFont(new java.awt.Font("微软雅黑",1,14));
deng.addActionListener(this);
cp3.add(aa);
aa.addActionListener(this);
cp3.add(bb);
bb.addActionListener(this);
cp3.add(cc);
cc.addActionListener(this);
cp3.add(dd);
dd.addActionListener(this);
cp3.add(ee);
ee.addActionListener(this);
cp3.add(ff);
ff.addActionListener(this);
aa.setVisible(false);
bb.setVisible(false);
cc.setVisible(false);
dd.setVisible(false);
ee.setVisible(false);
ff.setVisible(false);


JMenuBar mainMenu = new JMenuBar();
setJMenuBar(mainMenu);
JMenu editMenu = new JMenu("编辑");
JMenu viewMenu = new JMenu("查看");
JMenu helpMenu = new JMenu("帮助");
mainMenu.add(editMenu);
mainMenu.add(viewMenu);
mainMenu.add(helpMenu);


copy = new JMenuItem(" 复制");
paste = new JMenuItem(" 粘贴");
KeyStroke copyks = KeyStroke.getKeyStroke(KeyEvent.VK_C,
Event.CTRL_MASK);
copy.setAccelerator(copyks);// 设置退出菜单选项加上快捷键
KeyStroke pasteks = KeyStroke.getKeyStroke(KeyEvent.VK_V,
Event.CTRL_MASK);
paste.setAccelerator(pasteks);// 设置退出菜单选项加上快捷键
editMenu.add(copy);
editMenu.add(paste);
copy.addActionListener(this);
paste.addActionListener(this);


t = new JMenuItem("●标准型");
s = new JMenuItem(" 科学型");
viewMenu.add(t);
viewMenu.add(s);
t.addActionListener(this);
s.addActionListener(this);


help = new JMenuItem(" 帮助主题");
about = new JMenuItem(" 关于计算器");
helpMenu.add(help);
helpMenu.add(about);
help.addActionListener(this);
about.addActionListener(this);


//addWindowListener(new WindowDestroyer());// 结束窗口
}


public void actionPerformed(ActionEvent e)


{// 响应动作代码


if (first == 1)
text.setText("");
first = 0;// 第一次把文本框0.清空


Object temp = e.getSource();


if (temp == copy) {
copycontent = text.getText();
}
if (temp == paste) {
text.setText(text.getText() + copycontent);


}
if (temp == t) {// 标准


sixteen.setVisible(false);
ten.setVisible(false);
eight.setVisible(false);
two.setVisible(false);
t.setText("●标准型");
s.setText(" 科学型");
aa.setVisible(false);
bb.setVisible(false);
cc.setVisible(false);
dd.setVisible(false);
ee.setVisible(false);
ff.setVisible(false);
}
if (temp == s) {// 科学


sixteen.setVisible(true);
ten.setVisible(true);
eight.setVisible(true);
two.setVisible(true);
t.setText(" 标准型");
s.setText("●科学型");
aa.setVisible(true);
bb.setVisible(true);
cc.setVisible(true);
dd.setVisible(true);
ee.setVisible(true);
ff.setVisible(true);
aa.setEnabled(false);
bb.setEnabled(false);
cc.setEnabled(false);
dd.setEnabled(false);
ee.setEnabled(false);
ff.setEnabled(false);


}
if (temp == help) { // 打开系统帮助文件 要查资料
try {
String filePath = "C:/WINDOWS/Help/calc.chm";
Runtime.getRuntime().exec("cmd.exe /c " + filePath);


} catch (Exception eeee) {
System.out.println("打开系统的计算器出错");
}
}
if (temp == about) {
JOptionPane.showMessageDialog(frame, " Java计算器殷永生 制作", "关于计算器",
JOptionPane.INFORMATION_MESSAGE);
;
}


try {
if (temp == sixteen) {
String hex = text.getText();
int inthex = Integer.parseInt(hex, jin);// 先把数变为10进制
text.setText(convert.decHex(inthex));
jin = 16;
aa.setEnabled(true);
bb.setEnabled(true);
cc.setEnabled(true);
dd.setEnabled(true);
ee.setEnabled(true);
ff.setEnabled(true);
num2.setEnabled(true);
num3.setEnabled(true);
num4.setEnabled(true);
num5.setEnabled(true);
num6.setEnabled(true);
num7.setEnabled(true);
num8.setEnabled(true);
num9.setEnabled(true);


}
if (temp == eight) {
String oct = text.getText();
int intoct = Integer.parseInt(oct, jin);
text.setText(convert.decOct(intoct));
jin = 8;


aa.setEnabled(false);
bb.setEnabled(false);
cc.setEnabled(false);
dd.setEnabled(false);
ee.setEnabled(false);
ff.setEnabled(false);
num2.setEnabled(true);
num3.setEnabled(true);
num4.setEnabled(true);
num5.setEnabled(true);
num6.setEnabled(true);
num7.setEnabled(true);
num8.setEnabled(false);
num9.setEnabled(false);
}
if (temp == two) {
String bin = text.getText();
int intbin = Integer.parseInt(bin, jin);
text.setText(convert.decBin(intbin));
jin = 2;


aa.setEnabled(false);
bb.setEnabled(false);
cc.setEnabled(false);
dd.setEnabled(false);
ee.setEnabled(false);
ff.setEnabled(false);
num2.setEnabled(false);
num3.setEnabled(false);
num4.setEnabled(false);
num5.setEnabled(false);
num6.setEnabled(false);
num7.setEnabled(false);
num8.setEnabled(false);
num9.setEnabled(false);
}
if (temp == ten) {
String dec = text.getText();
int intdec = Integer.parseInt(dec, jin);
text.setText(intdec + "");
jin = 10;
aa.setEnabled(false);
bb.setEnabled(false);
cc.setEnabled(false);
dd.setEnabled(false);
ee.setEnabled(false);
ff.setEnabled(false);
num2.setEnabled(true);
num3.setEnabled(true);
num4.setEnabled(true);
num5.setEnabled(true);
num6.setEnabled(true);
num7.setEnabled(true);
num8.setEnabled(true);
num9.setEnabled(true);
}
} catch (Exception ee) {
System.out.println("转换出错,可能你没有输入任何字符");
text.setText("转换出错");
clear = false;
}


if (temp == backspace) {// 退格
String s = text.getText();
text.setText("");
for (int i = 0; i < s.length() - 1; i++) {
char a = s.charAt(i);
text.setText(text.getText() + a);
}
}


if (temp == ce) {
text.setText("0.");
clear = true;
first = 1;
}
if (temp == c) {
text.setText("0.");
;
clear = true;
first = 1;
}


if (temp == num0) {
if (clear == false)// 判断是否点击了符号位
text.setText("");
text.setText(text.getText() + "0");
}


if (temp == num1) {
if (clear == false)
text.setText("");
text.setText(text.getText() + "1");
clear = true;// 第二次不在清空(前二句)
}


if (temp == num2) {
if (clear == false)
text.setText("");
text.setText(text.getText() + "2");
clear = true;
}


if (temp == num3) {
if (clear == false)
text.setText("");
text.setText(text.getText() + "3");
clear = true;
}


if (temp == num4) {
if (clear == false)
text.setText("");
text.setText(text.getText() + "4");
clear = true;
}


if (temp == num5) {
if (clear == false)
text.setText("");
text.setText(text.getText() + "5");
clear = true;
}


if (temp == num6) {
if (clear == false)
text.setText("");
text.setText(text.getText() + "6");
clear = true;
}
if (temp == num7) {
if (clear == false)
text.setText("");
text.setText(text.getText() + "7");
clear = true;
}


if (temp == num8) {
if (clear == false)
text.setText("");
text.setText(text.getText() + "8");
clear = true;
}


if (temp == num9) {
if (clear == false)
text.setText("");
text.setText(text.getText() + "9");
clear = true;
}
if (temp == aa) {
text.setText(text.getText() + "A");
}
if (temp == bb) {
text.setText(text.getText() + "B");
}


if (temp == cc) {
text.setText(text.getText() + "C");
}


if (temp == dd) {
text.setText(text.getText() + "D");
}


if (temp == ee) {
text.setText(text.getText() + "E");
}
if (temp == ff) {
text.setText(text.getText() + "F");
}
if (temp == dian) {
clickable = true;
for (int i = 0; i < text.getText().length(); i++)
if ('.' == text.getText().charAt(i)) {
clickable = false;
break;
} // 第一层判断是否里面含有小数点;


if (clickable == true)// 第二坛判断
text.setText(text.getText() + ".");


}


try {
if (temp == jia) {// 加法
qian = Double.parseDouble(text.getText());
fuhao = "+";
clear = false;
}
if (temp == jian) {
qian = Double.parseDouble(text.getText());
fuhao = "-";
clear = false;
;


}
if (temp == cheng) {
qian = Double.parseDouble(text.getText());
fuhao = "*";
clear = false;


}
if (temp == chu) {
qian = Double.parseDouble(text.getText());
fuhao = "/";
clear = false;


}
if (temp == deng) {
double ss = Double.parseDouble(text.getText());
text.setText("");
if (fuhao == "+")
text.setText(qian + ss + "");
if (fuhao == "-")
text.setText(qian - ss + "");
if (fuhao == "*")
text.setText(qian * ss + "");
if (fuhao == "/")
text.setText(qian / ss + "");
clear = false;// 要清空前一次的数据
;


}


if (temp == kai) {
String s = text.getText();
if (s.charAt(0) == '-') {
text.setText("负数不能开根号");
} else
text.setText(Double.toString(java.lang.Math.sqrt(Double
.parseDouble(text.getText()))));
clear = false;
}


if (temp == diao) {


if (text.getText().charAt(0) == '0'
&& text.getText().length() == 1) {
text.setText("除数不能为零");
} else {
boolean isDec = true;
int i, j, k;
String s = Double.toString(1 / Double.parseDouble(text
.getText()));
for (i = 0; i < s.length(); i++)
if (s.charAt(i) == '.')
break;
for (j = i + 1; j < s.length(); j++)
if (s.charAt(j) != '0') {
isDec = false;
break;
}
if (isDec == true) {
String stemp = "";
for (k = 0; k < i; k++)
stemp += s.charAt(k);
text.setText(stemp);
} else
text.setText(s);
}


clear = false;
}
if (temp == qiuyi) {
text.setText("0");
clear = false;
}
if (temp == fu) { // 导师,此方法参考书中例子
boolean isNumber = true;
String s = text.getText();
for (int i = 0; i < s.length(); i++)
if (!(s.charAt(i) >= '0' && s.charAt(i) <= '9'
|| s.charAt(i) == '.' || s.charAt(i) == '-')) {
isNumber = false;
break;
}
if (isNumber == true) {
// 如果当前字符串首字母有'-'号,代表现在是个负数,再按下时,则将首符号去掉
if (s.charAt(0) == '-') {
text.setText("");
for (int i = 1; i < s.length(); i++) {
char a = s.charAt(i);
text.setText(text.getText() + a);
}
}
// 如果当前字符串第一个字符不是符号,则添加一个符号在首字母处
else
text.setText('-' + s);
}
}


} catch (Exception eee) {
System.out.println("运算时,首先输入数字或字符");
text.setText("运算出错");
clear = false;
}


}




class objConversion {// 导师,本进制类参考了CSMD类转换例子


public void objConversion() {
}


public String decDec(int decNum) {// 10


String strDecNum = Integer.toString(decNum);


for (int i = strDecNum.length(); i < 3; i++) {
strDecNum = "0" + strDecNum;
}


// return strDecNum;
return invert(strDecNum, 5);


}


public String decHex(int decNum) {// 10 to 16


String strHexNum = "";
int currentNum = 0;


while (decNum != 0) {


if (decNum > 15) {


currentNum = decNum % 16;
decNum /= 16;


} else {


currentNum = decNum;
decNum = 0;


}


switch (currentNum) {


case 15:
strHexNum += "F";
break;
case 14:
strHexNum += "E";
break;
case 13:
strHexNum += "D";
break;
case 12:
strHexNum += "C";
break;
case 11:
strHexNum += "B";
break;
case 10:
strHexNum += "A";
break;
default:
strHexNum += Integer.toString(currentNum);
break;


}


}


return invert(strHexNum, 2);


}


public String decOct(int decNum) {// 10 to 8


String strOctNum = "";


while (decNum != 0) {


if (decNum > 7) {


strOctNum += Integer.toString(decNum % 8);
decNum /= 8;


} else {


strOctNum += Integer.toString(decNum);
decNum = 0;


}


}


return invert(strOctNum, 3);


}


public String decBin(int decNum) {// 10 to 2


String strBinNum = "";


while (decNum != 0) {


if (decNum > 1) {


strBinNum += Integer.toString(decNum % 2);
decNum /= 2;


} else {


strBinNum += Integer.toString(decNum);
decNum = 0;


}


}


return invert(strBinNum, 8);


}


private String invert(String strNum, int minLength) // 转换长度
{


String answer = "";
int length = strNum.length();


if (length < minLength) {


for (int padding = (minLength - length); padding > 0; padding--) {
answer += "0";
}


}


for (int i = length; i > 0; i--) {
answer += strNum.charAt(i - 1);
}


return answer;


}


}


public static void main(String arg[])// 产生窗口
{
calculator win = new calculator();

}


}

/**

*食物模块

*/

package com_mwq_food;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Vector;


import javax.swing.ComboBoxModel;
import javax.swing.DefaultComboBoxModel;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.ListModel;


import javax.swing.WindowConstants;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;
import javax.swing.SwingUtilities;


import com_mwq_dao.DBC;
import com_mwq_foodsort.SortUtil;


public class Foodmanage extends javax.swing.JFrame implements ActionListener {
private JPanel jPanel1;
private JLabel jLabel3;
private JLabel jLabel4;
private JLabel jLabel5;
private JButton jButton3;
private JTable jTable1;
private JScrollPane jScrollPane1;
private JButton jButton2;
private JButton jButton1;
private JComboBox jComboBox1;
private JLabel jLabel7;
private JTextField jTextField5;
private JLabel jLabel6;
private JTextField jTextField4;
private JTextField jTextField3;
private JTextField jTextField2;
private JLabel jLabel2;
private JTextField jTextField1;
private JLabel jLabel1;
DBC db=DBC.getIntance();
Connection con=db.getConnection();
FoodUtil fu=new FoodUtil();
SortUtil su=new SortUtil();
Vector<String> sort=new Vector<String>(); //存放菜的种类
/**
* Auto-generated main method to display this JFrame
*/
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
Foodmanage inst = new Foodmanage();
}
});
}
//构造函数
public Foodmanage() {
super();
initGUI();
showfood();
}

//initGUI方法
private void initGUI() {
try {
this.setLocation(50,50);
this.setVisible(true);
setResizable(false);
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
this.setTitle("菜品管理");
getContentPane().setLayout(null);
ResultSet rs = null;

rs=su.showSort(con);                //往vector里面加入菜类品种
while(rs.next()){
 sort.add(rs.getString("name"));
}
{
jPanel1 = new JPanel();
getContentPane().add(jPanel1);
jPanel1.setBounds(0, 0, 584, 462);
jPanel1.setLayout(null);
jPanel1.setBackground(new java.awt.Color(128,128,128));
//编号
{
jLabel1 = new JLabel();
jPanel1.add(jLabel1);
jLabel1.setText("编号:");
jLabel1.setBounds(12, 33, 73, 24);
jLabel1.setFont(new java.awt.Font("新宋体",1,20));
}
//编号输入框
{
jTextField1 = new JTextField();
jPanel1.add(jTextField1);
jTextField1.setBounds(85, 31, 88, 24);
jTextField1.setSize(83, 26);
}
//名称
{
jLabel2 = new JLabel();
jPanel1.add(jLabel2);
jLabel2.setText("名称:");
jLabel2.setBounds(191, 33, 87, 25);
jLabel2.setFont(new java.awt.Font("新宋体",1,20));
}
//名称输入框
{
jTextField2 = new JTextField();
jPanel1.add(jTextField2);
jTextField2.setBounds(272, 33, 81, 24);
jTextField2.setSize(83, 26);
}
//单位
{
jLabel3 = new JLabel();
jPanel1.add(jLabel3);
jLabel3.setText("单位:");
jLabel3.setBounds(365, 29, 63, 26);
jLabel3.setFont(new java.awt.Font("新宋体",1,20));
}
//单位输入框
{
jTextField3 = new JTextField();
jPanel1.add(jTextField3);
jTextField3.setBounds(455, 33, 41, 24);
}
//价格
{
jLabel4 = new JLabel();
jPanel1.add(jLabel4);
jLabel4.setText("价格:");
jLabel4.setBounds(365, 80, 63, 30);
jLabel4.setFont(new java.awt.Font("新宋体",1,20));
}
//价格输入框
{
jTextField4 = new JTextField();
jPanel1.add(jTextField4);
jTextField4.setBounds(455, 86, 41, 24);
}
//元
{
jLabel5 = new JLabel();
jPanel1.add(jLabel5);
jLabel5.setText("元");
jLabel5.setBounds(516, 88, 32, 18);
jLabel5.setFont(new java.awt.Font("新宋体",1,20));
}
//简称
{
jLabel6 = new JLabel();
jPanel1.add(jLabel6);
jLabel6.setText("简称:");
jLabel6.setBounds(12, 83, 78, 27);
jLabel6.setFont(new java.awt.Font("新宋体",1,20));
}
//简称输入框
{
jTextField5 = new JTextField();
jPanel1.add(jTextField5);
jTextField5.setBounds(86, 86, 83, 26);
}
//菜系
{
jLabel7 = new JLabel();
jPanel1.add(jLabel7);
jLabel7.setText("菜系");
jLabel7.setBounds(191, 87, 63, 21);
jLabel7.setFont(new java.awt.Font("新宋体",1,20));
}
//下拉选择框
{
ComboBoxModel jComboBox1Model = 
new DefaultComboBoxModel(sort);     //开始就把菜的种类存进来,即vector <String> sort
jComboBox1 = new JComboBox();
jPanel1.add(jComboBox1);
jComboBox1.setModel(jComboBox1Model);
jComboBox1.setBounds(272, 85, 83, 24);
jComboBox1.setFont(new java.awt.Font("新宋体",1,12));
}
//添加
{
jButton1 = new JButton();
jPanel1.add(jButton1);
jButton1.setText("添加");
jButton1.setBounds(272, 139, 90, 35);
jButton1.setIcon(new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/tianjia.jpg")));
jButton1.setMargin(new java.awt.Insets(0, 12, 0, 0));
jButton1.setRolloverIcon(new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/tianjia 2.jpg")));
jButton1.setRolloverSelectedIcon(new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/tianjia.jpg")));
   jButton1.addActionListener(this);
}
//删除
{
jButton2 = new JButton();
jPanel1.add(jButton2);
jButton2.setText("删除");
jButton2.setBounds(401, 139, 90, 35);
jButton2.setIcon(new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/shanchu.jpg")));
jButton2.setMargin(new java.awt.Insets(0, 12, 0, 0));
jButton2.setRolloverIcon(new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/del2.jpg")));
jButton2.setRolloverSelectedIcon(new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/shanchu.jpg")));
jButton2.addActionListener(this);
}
{
jScrollPane1 = new JScrollPane();
jPanel1.add(jScrollPane1);
jScrollPane1.setBounds(0, 185, 584, 142);

}
//退出
{
jButton3 = new JButton();
jPanel1.add(jButton3);
jButton3.setText("退出");
jButton3.setBounds(455, 401, 90, 35);
jButton3.setIcon(new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/tuichu.jpg")));
jButton3.setMargin(new java.awt.Insets(0, 12, 0, 0));
jButton3.setRolloverIcon(new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/tuichu2.jpg")));
jButton3.setRolloverSelectedIcon(new ImageIcon(getClass().getClassLoader().getResource("com_mwq_frame/image/tuichu.jpg")));
jButton3.setFont(new java.awt.Font("微软雅黑",1,16));
jButton3.addActionListener(this);
}
}
pack();
this.setSize(600, 500);
} catch (Exception e) {
e.printStackTrace();
}
}


//显示所有菜
public void showfood(){
DefaultTableModel dt = 
new DefaultTableModel(null, new String[] { "序号",
"商品编号", "菜系","名称","简称", "单位", "单价"});
jTable1 = new JTable();
jScrollPane1.setViewportView(jTable1);
jTable1.setModel(dt);
dt.setRowCount(0);
jTable1.setPreferredSize(new java.awt.Dimension(566, 180));

Vector vc = null;
ResultSet rs;
try {
rs = fu.showallFood(con);

int n = 1;
while (rs.next()) {
String num = rs.getString("num");
String sort = rs.getString("sort");
String name=rs.getString("name");
String sh=rs.getString("short");
String unit=rs.getString("unit");
int oneprice=rs.getInt("oneprice");

vc = new Vector();
vc.add(n++);
vc.add(num);
vc.add(sort);
vc.add(name);
vc.add(sh);
vc.add(unit);
vc.add(oneprice);


dt.addRow(vc);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

//添加菜类
public void addFood() throws SQLException{
String foodnum=jTextField1.getText().trim();    //去除首位空格
String sort=(String) jComboBox1.getSelectedItem();
String name=jTextField2.getText().trim();    //去除首位空格
String sh=jTextField5.getText().trim();    //去除首位空格
String unit=jTextField3.getText().trim();    //去除首位空格
String price=jTextField4.getText().trim();

//正规表达式限制
String foodnumET="[0-9]{1,7}";
String shET="[a-z]{1,5}";
String unitET="盘瓶斤碗两";
String priceET="[0-9]{1,4}";

//先判断是否存在
if(fu.checkFood(con, foodnum)){
JOptionPane.showMessageDialog(null, "已经存在,请重新输入","友情提示"
,JOptionPane.INFORMATION_MESSAGE
,new ImageIcon(getClass()
.getClassLoader().getResource("com_mwq_frame/image/55.jpg")));
jTextField1.setText("");          //菜名输入框清空
jTextField1.requestFocus();       //获得焦点
}else if(foodnum.length()==0||name.length()==0||sh.length()==0||unit.length()==0||price.length()==0){
JOptionPane.showMessageDialog( null,"请不要输入空值","提示",
JOptionPane.INFORMATION_MESSAGE
,new ImageIcon(getClass().getClassLoader()
.getResource("com_mwq_frame/image/55.jpg")));
}else if(unitET.indexOf(unit)==-1){
JOptionPane.showMessageDialog( null,"请输入正确的单位","提示",
JOptionPane.INFORMATION_MESSAGE
,new ImageIcon(getClass().getClassLoader()
.getResource("com_mwq_frame/image/55.jpg")));
jTextField3.setText("");          //菜名输入框清空
jTextField3.requestFocus();       //获得焦点
}else if(!sh.matches(shET)){
JOptionPane.showMessageDialog( null,"请正确的简称(字母)","提示",
JOptionPane.INFORMATION_MESSAGE
,new ImageIcon(getClass().getClassLoader()
.getResource("com_mwq_frame/image/55.jpg")));
jTextField5.setText("");          //菜名输入框清空
jTextField5.requestFocus();       //获得焦点
}else if(!foodnum.matches(foodnumET)){
JOptionPane.showMessageDialog( null,"编号请输入7位以内的数字","提示",
JOptionPane.INFORMATION_MESSAGE
,new ImageIcon(getClass().getClassLoader()
.getResource("com_mwq_frame/image/55.jpg")));
jTextField1.setText("");          //菜名输入框清空
jTextField1.requestFocus();       //获得焦点
}else if(!price.matches(priceET)){
JOptionPane.showMessageDialog( null,"请正确的价格","提示",
JOptionPane.INFORMATION_MESSAGE
,new ImageIcon(getClass().getClassLoader()
.getResource("com_mwq_frame/image/55.jpg")));
jTextField4.setText("");          //菜名输入框清空
jTextField4.requestFocus();       //获得焦点
}else if(name.length()>8){
JOptionPane.showMessageDialog( null,"名字输入太长","提示",
JOptionPane.INFORMATION_MESSAGE
,new ImageIcon(getClass().getClassLoader()
.getResource("com_mwq_frame/image/55.jpg")));
jTextField2.setText("");         //菜名输入框清空
jTextField2.requestFocus();      //获得焦点
}else{
fu.addFood(con, foodnum, sort, name, sh, unit, price);
}
}

//删除菜类
public void delFood(){
int h=jTable1.getSelectedRow();
try {
String foodnum=(String) jTable1.getValueAt(h, 1);
fu.delFood(con, foodnum);
JOptionPane.showMessageDialog(null, "删除成功","恭喜你"
,JOptionPane.INFORMATION_MESSAGE
,new ImageIcon(getClass()
.getClassLoader().getResource("com_mwq_frame/image/smill.jpg")));

} catch (SQLException e) {
e.printStackTrace();
} catch (ArrayIndexOutOfBoundsException e1){
JOptionPane.showMessageDialog(null, "请选中要删除的行","友情提示"
,JOptionPane.INFORMATION_MESSAGE
,new ImageIcon(getClass()
.getClassLoader().getResource("com_mwq_frame/image/55.jpg")));
}
}

    //*****************************事件处理区域*********************************
public void actionPerformed(ActionEvent e) {
if(e.getSource()==jButton1){
try {
this.addFood();
this.showfood();
} catch (SQLException e1) {
e1.printStackTrace();
}
}
if(e.getSource()==jButton2){
this.delFood();
this.showfood();
}
if(e.getSource()==jButton3){
this.dispose();
}
}




}

package com_mwq_food;


import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;


public class FoodUtil {

//显示所有菜类
public ResultSet showallFood(Connection con) throws SQLException{
String sql="select * from menu";
Statement ps=con.createStatement();
return ps.executeQuery(sql);
}

//根据简称查找菜名
public ResultSet findFoodres(Connection con,String sh)throws SQLException{
String sql="select * from menu where short=?";
PreparedStatement ps=con.prepareStatement(sql);
ps.setString(1, sh);
return ps.executeQuery();
}

//根据简称查找菜名
public String findFood(Connection con,String sh)throws SQLException{
String sql="select * from menu where short=?";
PreparedStatement ps=con.prepareStatement(sql);
ps.setString(1, sh);
ResultSet rs=ps.executeQuery();
String str="不存在";
if(rs.next()){
str=rs.getString("name");
}
return str;
}

//根据简称查找单位
public String findFoodUtil(Connection con,String sh)throws SQLException{
String sql="select * from menu where short=?";
PreparedStatement ps=con.prepareStatement(sql);
ps.setString(1, sh);
ResultSet rs=ps.executeQuery();
String str=null;
if(rs.next()){
str=rs.getString("unit");
}
return str;
}

//查看已知编号是否存在
public boolean checkFood(Connection con,String num)throws SQLException{
String sql="select * from menu where num=?";
PreparedStatement ps=con.prepareStatement(sql);
ps.setString(1, num);
ResultSet rs=ps.executeQuery();
return rs.next();
}

//添加菜类
public void addFood(Connection con,String foodnum,String sort,String name,String sh,String unit,String price)throws SQLException{
int oneprice=Integer.valueOf(price);
String sql="insert into menu values(?,?,?,?,?,?)";
PreparedStatement ps=con.prepareStatement(sql);
ps.setString(1, foodnum);
ps.setString(2, sort);
ps.setString(3, name);
ps.setString(4, sh);
ps.setString(5, unit);
ps.setInt(6, oneprice);
ps.executeUpdate();
}

//根据编号删除菜类
public void delFood(Connection con,String foodnum)throws SQLException{
String sql="delete from menu where num=?";
PreparedStatement ps=con.prepareStatement(sql);
ps.setString(1, foodnum);
ps.executeUpdate();
}


}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值