2018年4月16日 星期一

Mysql 實作 DBMS (使用JDBC)




Main Systems :


  1. import java.awt.Color;  
  2. import java.awt.Graphics;  
  3. import java.awt.Graphics2D;  
  4. import java.awt.Image;  
  5. import java.io.BufferedReader;  
  6. import java.io.BufferedWriter;  
  7. import java.io.File;  
  8. import java.io.FileInputStream;  
  9. import java.io.FileNotFoundException;  
  10. import java.io.FileReader;  
  11. import java.io.FileWriter;  
  12. import java.io.IOException;  
  13. import java.io.InputStream;  
  14. import java.sql.Connection;  
  15. import java.sql.DriverManager;  
  16. import java.sql.PreparedStatement;  
  17. import java.sql.ResultSet;  
  18. import java.sql.SQLException;  
  19. import java.sql.Statement;  
  20. import java.util.*;  
  21. import java.util.logging.Level;  
  22. import java.util.logging.Logger;  
  23.   
  24. import javax.swing.*;  
  25. import javax.swing.table.DefaultTableModel;  
  26. import javax.swing.table.TableModel;  
  27.   
  28. /* 
  29.  * To change this license header, choose License Headers in Project Properties. 
  30.  * To change this template file, choose Tools | Templates 
  31.  * and open the template in the editor. 
  32.  */  
  33.   
  34. /** 
  35.  * 
  36.  * @author ping xin 
  37.  */  
  38. public class Date2 extends javax.swing.JFrame {  
  39.  String com = "com.mysql.jdbc.Driver";  
  40.  String URL = "jdbc:mysql://127.0.0.1/xin_data?user=koer3740&password=er3p5eak97&useUnicode=true&characterEncoding=utf-8";  
  41.  String SetInterface = "null" , SetInter2 = "China";  
  42.  Deta4 obj = new Deta4();  
  43.  String ImagePath ;  
  44.    
  45.     /** 
  46.      * Creates new form Date2 
  47.      */  
  48.     public Date2() {  
  49.         initComponents();  
  50.         ReadSET();//讀取設定  
  51.         Read();//事先讀取資料 DB > 管理器  
  52.        //事件按鈕端  
  53.         obj.jButton4.addActionListener(new java.awt.event.ActionListener() {  
  54.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  55.                 SALE();  
  56.             }  
  57.         });  
  58.         obj.jButton3.addActionListener(new java.awt.event.ActionListener() {  
  59.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  60.                 Date4OK();  
  61.             }  
  62.         });  
  63.          obj.jButton1.addActionListener(new java.awt.event.ActionListener() {  
  64.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  65.                 Date4Canel();  
  66.             }  
  67.   
  68.             private void Date4Canel() {  
  69.                 obj.dispose();  
  70.             }  
  71.         });       
  72.     }  
  73.     public String CheckInput(boolean is) throws Exception{  
  74.         String id  = jTextField3.getText();  
  75.         if(is == true){  
  76.         for(User u : users){  
  77.         if(id.equals(u.id)||jTextField1.getText().isEmpty()||jTextField2.getText().isEmpty()||jTextField3.getText().isEmpty()||jTextField4.getText().isEmpty()||jTextField5.getText().isEmpty()||jTextField6.getText().isEmpty()||jTextField7.getText().isEmpty()){    
  78.                  JOptionPane.showMessageDialog(null"欄位不可以為空" + "和ID不能相同");   
  79.                  throw new Exception();  
  80.         }  
  81.         }  
  82.         }else{  
  83.         if(jTextField1.getText().isEmpty()||jTextField2.getText().isEmpty()||jTextField3.getText().isEmpty()||jTextField4.getText().isEmpty()||jTextField5.getText().isEmpty()||jTextField6.getText().isEmpty()||jTextField7.getText().isEmpty()){    
  84.                  JOptionPane.showMessageDialog(null"欄位不可以為空");   
  85.                  throw new Exception();  
  86.         }  
  87.         }  
  88.         return id ;  
  89.     }  
  90.     public void FieldEmpty(){  
  91.         jLabel1.setText(null);  
  92.         jTextField1.setText(null);jTextField2.setText(null);jTextField3.setText(null);  
  93.         jTextField4.setText(null);jTextField5.setText(null);jTextField6.setText(null);  
  94.         jTextField7.setText(null);  
  95.     }  
  96.     public void ReadSET(){  
  97.         File n = new File("SET");  
  98.         String Str = null;  
  99.      try {   
  100.            
  101.          if(n.exists()){  
  102.              FileReader fis = new FileReader("SET/設定.txt");  
  103.              BufferedReader fis2 = new  BufferedReader(fis);   
  104.              while((Str = fis2.readLine()) != null){  
  105.              Scanner sc = new Scanner(Str).useDelimiter("\t");  
  106.              String ssc = sc.next();  
  107.              if(ssc.equals("SETBLUE")) SetBlue();  
  108.              else if(ssc.equals("SETNULL")) SetNull();  
  109.              else SetGreen();  
  110.              String ssc2 = sc.next();  
  111.              if(ssc2.equals("China"))  SetChina();   
  112.              else SetEnglish();   
  113.                }  
  114.              fis.close();  
  115.              fis2.close();  
  116.          }else  n.mkdirs();          
  117.      } catch (Exception ex) {  
  118.          Logger.getLogger(Date2.class.getName()).log(Level.SEVERE, null, ex);  
  119.      }  
  120.     }  
  121.   
  122.     /** 
  123.      * This method is called from within the constructor to initialize the form. 
  124.      * WARNING: Do NOT modify this code. The content of this method is always 
  125.      * regenerated by the Form Editor. 
  126.      */  
  127.     @SuppressWarnings("unchecked")  
  128.     // <editor-fold defaultstate="collapsed" desc="Generated Code">                            
  129.     private void initComponents() {  
  130.   
  131.         jMenuItem6 = new javax.swing.JMenuItem();  
  132.         jScrollPane1 = new javax.swing.JScrollPane();  
  133.         jTable1 = new javax.swing.JTable();  
  134.         jPanel1 = new javax.swing.JPanel();  
  135.         jLabel1 = new javax.swing.JLabel();  
  136.         Brow = new javax.swing.JButton();  
  137.         jLabel2 = new javax.swing.JLabel();  
  138.         jTextField1 = new javax.swing.JTextField();  
  139.         jLabel3 = new javax.swing.JLabel();  
  140.         jTextField2 = new javax.swing.JTextField();  
  141.         jLabel4 = new javax.swing.JLabel();  
  142.         jTextField3 = new javax.swing.JTextField();  
  143.         jLabel5 = new javax.swing.JLabel();  
  144.         jTextField4 = new javax.swing.JTextField();  
  145.         jLabel6 = new javax.swing.JLabel();  
  146.         jTextField5 = new javax.swing.JTextField();  
  147.         jLabel7 = new javax.swing.JLabel();  
  148.         jTextField6 = new javax.swing.JTextField();  
  149.         jButton2 = new javax.swing.JButton();  
  150.         jButton3 = new javax.swing.JButton();  
  151.         jLabel8 = new javax.swing.JLabel();  
  152.         jButton8 = new javax.swing.JButton();  
  153.         Sale = new javax.swing.JButton();  
  154.         jTextField7 = new javax.swing.JTextField();  
  155.         jLabel9 = new javax.swing.JLabel();  
  156.         jPanel2 = new javax.swing.JPanel();  
  157.         jButton4 = new javax.swing.JButton();  
  158.         jButton5 = new javax.swing.JButton();  
  159.         DELETEALL = new javax.swing.JButton();  
  160.         jButton6 = new javax.swing.JButton();  
  161.         jMenuBar1 = new javax.swing.JMenuBar();  
  162.         jMenu1 = new javax.swing.JMenu();  
  163.         jMenuItem7 = new javax.swing.JMenuItem();  
  164.         jMenu2 = new javax.swing.JMenu();  
  165.         jMenu3 = new javax.swing.JMenu();  
  166.         jMenuItem1 = new javax.swing.JMenuItem();  
  167.         jMenuItem2 = new javax.swing.JMenuItem();  
  168.         jMenu4 = new javax.swing.JMenu();  
  169.         jMenuItem3 = new javax.swing.JMenuItem();  
  170.         jMenuItem4 = new javax.swing.JMenuItem();  
  171.         jMenuItem5 = new javax.swing.JMenuItem();  
  172.         jMenu5 = new javax.swing.JMenu();  
  173.   
  174.         jMenuItem6.setText("jMenuItem6");  
  175.   
  176.         setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE);  
  177.         setBounds(new java.awt.Rectangle(160000));  
  178.         setMaximumSize(new java.awt.Dimension(935608));  
  179.         setMinimumSize(new java.awt.Dimension(935608));  
  180.         setPreferredSize(new java.awt.Dimension(935608));  
  181.         setResizable(false);  
  182.         addWindowListener(new java.awt.event.WindowAdapter() {  
  183.             public void windowClosing(java.awt.event.WindowEvent evt) {  
  184.                 formWindowClosing(evt);  
  185.             }  
  186.         });  
  187.         getContentPane().setLayout(null);  
  188.   
  189.         jTable1.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(15300), 2));  
  190.         jTable1.setModel(new javax.swing.table.DefaultTableModel(  
  191.             new Object [][] {  
  192.   
  193.             },  
  194.             new String [] {  
  195.                 "商品名 ""ID""電話""價格""地址""發行商""e-mail"  
  196.             }  
  197.         ));  
  198.         jTable1.addMouseListener(new java.awt.event.MouseAdapter() {  
  199.             public void mouseClicked(java.awt.event.MouseEvent evt) {  
  200.                 jTable1MouseClicked(evt);  
  201.             }  
  202.         });  
  203.         jScrollPane1.setViewportView(jTable1);  
  204.   
  205.         getContentPane().add(jScrollPane1);  
  206.         jScrollPane1.setBounds(00450450);  
  207.   
  208.         jPanel1.setBackground(new java.awt.Color(15325551));  
  209.         jPanel1.setForeground(new java.awt.Color(255255255));  
  210.         jPanel1.setMaximumSize(new java.awt.Dimension(430520));  
  211.         jPanel1.setLayout(null);  
  212.   
  213.         jLabel1.setBackground(new java.awt.Color(255255255));  
  214.         jLabel1.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(1531530), 5));  
  215.         jLabel1.setOpaque(true);  
  216.         jPanel1.add(jLabel1);  
  217.         jLabel1.setBounds(8010310223);  
  218.   
  219.         Brow.setText("上傳圖片");  
  220.         Brow.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));  
  221.         Brow.addActionListener(new java.awt.event.ActionListener() {  
  222.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  223.                 BrowActionPerformed(evt);  
  224.             }  
  225.         });  
  226.         jPanel1.add(Brow);  
  227.         Brow.setBounds(3602409021);  
  228.   
  229.         jLabel2.setForeground(new java.awt.Color(51510));  
  230.         jLabel2.setText("商品名 :");  
  231.         jPanel1.add(jLabel2);  
  232.         jLabel2.setBounds(702509020);  
  233.         jPanel1.add(jTextField1);  
  234.         jTextField1.setBounds(14024012030);  
  235.   
  236.         jLabel3.setForeground(new java.awt.Color(51510));  
  237.         jLabel3.setText("電話 :");  
  238.         jPanel1.add(jLabel3);  
  239.         jLabel3.setBounds(803006015);  
  240.         jPanel1.add(jTextField2);  
  241.         jTextField2.setBounds(14028815030);  
  242.   
  243.         jLabel4.setForeground(new java.awt.Color(51510));  
  244.         jLabel4.setText("ID :");  
  245.         jPanel1.add(jLabel4);  
  246.         jLabel4.setBounds(903401815);  
  247.         jPanel1.add(jTextField3);  
  248.         jTextField3.setBounds(1403284030);  
  249.   
  250.         jLabel5.setForeground(new java.awt.Color(51510));  
  251.         jLabel5.setText("地址 :");  
  252.         jPanel1.add(jLabel5);  
  253.         jLabel5.setBounds(803806015);  
  254.         jPanel1.add(jTextField4);  
  255.         jTextField4.setBounds(14036825030);  
  256.   
  257.         jLabel6.setForeground(new java.awt.Color(51510));  
  258.         jLabel6.setText("發行商 :");  
  259.         jPanel1.add(jLabel6);  
  260.         jLabel6.setBounds(1903406021);  
  261.         jPanel1.add(jTextField5);  
  262.         jTextField5.setBounds(25032814030);  
  263.   
  264.         jLabel7.setForeground(new java.awt.Color(51510));  
  265.         jLabel7.setText("e-mail :");  
  266.         jPanel1.add(jLabel7);  
  267.         jLabel7.setBounds(854206015);  
  268.         jPanel1.add(jTextField6);  
  269.         jTextField6.setBounds(14040825030);  
  270.   
  271.         jButton2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/delete.png"))); // NOI18N  
  272.         jButton2.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));  
  273.         jButton2.addActionListener(new java.awt.event.ActionListener() {  
  274.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  275.                 jButton2ActionPerformed(evt);  
  276.             }  
  277.         });  
  278.         jPanel1.add(jButton2);  
  279.         jButton2.setBounds(1304707030);  
  280.   
  281.         jButton3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/edit-icon.png"))); // NOI18N  
  282.         jButton3.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));  
  283.         jButton3.addActionListener(new java.awt.event.ActionListener() {  
  284.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  285.                 jButton3ActionPerformed(evt);  
  286.             }  
  287.         });  
  288.         jPanel1.add(jButton3);  
  289.         jButton3.setBounds(404707030);  
  290.         jPanel1.add(jLabel8);  
  291.         jLabel8.setBounds(30050015030);  
  292.   
  293.         jButton8.setText("最近銷售");  
  294.         jButton8.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));  
  295.         jButton8.addActionListener(new java.awt.event.ActionListener() {  
  296.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  297.                 jButton8ActionPerformed(evt);  
  298.             }  
  299.         });  
  300.         jPanel1.add(jButton8);  
  301.         jButton8.setBounds(3603009021);  
  302.   
  303.         Sale.setText("售出");  
  304.         Sale.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));  
  305.         Sale.addActionListener(new java.awt.event.ActionListener() {  
  306.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  307.                 SaleActionPerformed(evt);  
  308.             }  
  309.         });  
  310.         jPanel1.add(Sale);  
  311.         Sale.setBounds(3602709021);  
  312.   
  313.         jTextField7.setFont(new java.awt.Font("新細明體"014)); // NOI18N  
  314.         jPanel1.add(jTextField7);  
  315.         jTextField7.setBounds(3204485930);  
  316.   
  317.         jLabel9.setText("價格 :");  
  318.         jPanel1.add(jLabel9);  
  319.         jLabel9.setBounds(2704605018);  
  320.   
  321.         getContentPane().add(jPanel1);  
  322.         jPanel1.setBounds(4500490540);  
  323.   
  324.         jPanel2.setBackground(new java.awt.Color(15325551));  
  325.         jPanel2.setForeground(new java.awt.Color(255255255));  
  326.         jPanel2.setMaximumSize(new java.awt.Dimension(45070));  
  327.         jPanel2.setLayout(null);  
  328.   
  329.         jButton4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/ADD.png"))); // NOI18N  
  330.         jButton4.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));  
  331.         jButton4.addActionListener(new java.awt.event.ActionListener() {  
  332.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  333.                 jButton4ActionPerformed(evt);  
  334.             }  
  335.         });  
  336.         jPanel2.add(jButton4);  
  337.         jButton4.setBounds(370207330);  
  338.   
  339.         jButton5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Help-Support-icon.png"))); // NOI18N  
  340.         jButton5.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));  
  341.         jButton5.addActionListener(new java.awt.event.ActionListener() {  
  342.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  343.                 jButton5ActionPerformed(evt);  
  344.             }  
  345.         });  
  346.         jPanel2.add(jButton5);  
  347.         jButton5.setBounds(260207030);  
  348.   
  349.         DELETEALL.setIcon(new javax.swing.ImageIcon(getClass().getResource("/database-delete-icon.png"))); // NOI18N  
  350.         DELETEALL.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));  
  351.         DELETEALL.addActionListener(new java.awt.event.ActionListener() {  
  352.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  353.                 DELETEALLActionPerformed(evt);  
  354.             }  
  355.         });  
  356.         jPanel2.add(DELETEALL);  
  357.         DELETEALL.setBounds(130208030);  
  358.   
  359.         jButton6.setIcon(new javax.swing.ImageIcon(getClass().getResource("/排行.png"))); // NOI18N  
  360.         jButton6.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));  
  361.         jButton6.addActionListener(new java.awt.event.ActionListener() {  
  362.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  363.                 jButton6ActionPerformed(evt);  
  364.             }  
  365.         });  
  366.         jPanel2.add(jButton6);  
  367.         jButton6.setBounds(20208030);  
  368.   
  369.         getContentPane().add(jPanel2);  
  370.         jPanel2.setBounds(045046090);  
  371.   
  372.         jMenuBar1.setBackground(new java.awt.Color(2041530));  
  373.         jMenuBar1.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(1532040), 4));  
  374.   
  375.         jMenu1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Save-as-icon.png"))); // NOI18N  
  376.   
  377.         jMenuItem7.setText("印出");  
  378.         jMenuItem7.addActionListener(new java.awt.event.ActionListener() {  
  379.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  380.                 jMenuItem7ActionPerformed(evt);  
  381.             }  
  382.         });  
  383.         jMenu1.add(jMenuItem7);  
  384.   
  385.         jMenuBar1.add(jMenu1);  
  386.   
  387.         jMenu2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/捨定.png"))); // NOI18N  
  388.   
  389.         jMenu3.setText("語言");  
  390.   
  391.         jMenuItem1.setText("繁體");  
  392.         jMenuItem1.addActionListener(new java.awt.event.ActionListener() {  
  393.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  394.                 jMenuItem1ActionPerformed(evt);  
  395.             }  
  396.         });  
  397.         jMenu3.add(jMenuItem1);  
  398.   
  399.         jMenuItem2.setText("英文");  
  400.         jMenuItem2.addActionListener(new java.awt.event.ActionListener() {  
  401.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  402.                 jMenuItem2ActionPerformed(evt);  
  403.             }  
  404.         });  
  405.         jMenu3.add(jMenuItem2);  
  406.   
  407.         jMenu2.add(jMenu3);  
  408.   
  409.         jMenu4.setText("版面顏色");  
  410.   
  411.         jMenuItem3.setText("白色");  
  412.         jMenuItem3.addActionListener(new java.awt.event.ActionListener() {  
  413.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  414.                 jMenuItem3ActionPerformed(evt);  
  415.             }  
  416.         });  
  417.         jMenu4.add(jMenuItem3);  
  418.   
  419.         jMenuItem4.setBackground(new java.awt.Color(255255255));  
  420.         jMenuItem4.setForeground(new java.awt.Color(512040));  
  421.         jMenuItem4.setText("綠色");  
  422.         jMenuItem4.addActionListener(new java.awt.event.ActionListener() {  
  423.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  424.                 jMenuItem4ActionPerformed(evt);  
  425.             }  
  426.         });  
  427.         jMenu4.add(jMenuItem4);  
  428.   
  429.         jMenuItem5.setForeground(new java.awt.Color(5151255));  
  430.         jMenuItem5.setText("藍色");  
  431.         jMenuItem5.addActionListener(new java.awt.event.ActionListener() {  
  432.             public void actionPerformed(java.awt.event.ActionEvent evt) {  
  433.                 jMenuItem5ActionPerformed(evt);  
  434.             }  
  435.         });  
  436.         jMenu4.add(jMenuItem5);  
  437.   
  438.         jMenu2.add(jMenu4);  
  439.   
  440.         jMenuBar1.add(jMenu2);  
  441.   
  442.         jMenu5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/User-Interface-Exit-icon.png"))); // NOI18N  
  443.         jMenu5.addMouseListener(new java.awt.event.MouseAdapter() {  
  444.             public void mouseClicked(java.awt.event.MouseEvent evt) {  
  445.                 jMenu5MouseClicked(evt);  
  446.             }  
  447.         });  
  448.         jMenuBar1.add(jMenu5);  
  449.   
  450.         setJMenuBar(jMenuBar1);  
  451.   
  452.         pack();  
  453.     }// </editor-fold>                          
  454.     public void Sale(){        
  455.         obj.setVisible(true);         
  456.     }  
  457.     Double Sales_volume ;  
  458.     Double Settlement_costs;  
  459.     Double profit ;  
  460.     public void SALE(){ //售出功能   
  461.       try{  
  462.        Sales_volume  = Double.parseDouble( obj.jTextField1.getText())*Double.parseDouble( obj.jTextField2.getText());  
  463.        obj.jLabel12.setText(Sales_volume.toString());   
  464.        Settlement_costs  = (Double.parseDouble( obj.jTextField1.getText())*Double.parseDouble( obj.jTextField3.getText()))+Double.parseDouble( obj.jTextField5.getText())+Double.parseDouble( obj.jTextField6.getText());  
  465.        obj.jLabel7.setText(Settlement_costs.toString());   
  466.        Double Unit_profit = Double.parseDouble( obj.jTextField2.getText()) - Double.parseDouble( obj.jTextField3.getText()) ;  
  467.        obj.jLabel13.setText(Unit_profit.toString());      
  468.        profit = (Sales_volume)-(Settlement_costs);  
  469.        obj.jLabel8.setText(profit.toString());  
  470.          
  471.     }catch(Exception e){  
  472.            JOptionPane.showMessageDialog(null"欄位不得有特殊字元與空白""錯誤",  JOptionPane.ERROR_MESSAGE);  
  473.    }  
  474.     }  
  475.     public void Date4OK(){//執行確認後  
  476.       PreparedStatement ps = null ;  
  477.       PreparedStatement ps2 = null ;  
  478.       Connection conn = null ;  
  479.       String qriey = "UPDATE `mydatabase` SET `SUMP`= ?,`SUMC`= ? ,`SUMPR`= ? WHERE `id` = ?";  
  480.       String Addqriey = "INSERT INTO `mydatabaaseTimeList`(`Name`, `count`, `SUMP`, `SUMC`, `SUMPR`, `Unit Price`, `Unit cost`, `Unit profit`, `Freight`, `other`, `TIME`) VALUES (?,?,?,?,?,?,?,?,?,?,?)";  
  481.        try{  
  482.        if(jTextField3.getText().isEmpty()) throw new Exception();     
  483.        conn = getConnection();  
  484.        ps = conn.prepareStatement(qriey);    
  485.        ps2 = conn.prepareStatement(Addqriey);  
  486.        for(User u : users){  
  487.        if(jTextField3.getText().equals(u.id)){  
  488.        ps.setDouble(1, u.SUMP+Sales_volume);  
  489.        ps.setDouble(2, u.SUMC+Settlement_costs);  
  490.        ps.setDouble(3, u.SUMPR+profit);  
  491.        ps.setString(4, u.id);  
  492.         //************************************  
  493.       Date date = new Date();   
  494.       ps2.setString(1, jTextField1.getText()); ps2.setInt(2, Integer.parseInt(obj.jTextField1.getText()));  
  495.       ps2.setDouble(3, Double.parseDouble(obj.jLabel12.getText()));ps2.setDouble(4, Double.parseDouble(obj.jLabel7.getText()));ps2.setDouble(5, Double.parseDouble(obj.jLabel8.getText()));  
  496.       ps2.setDouble(6, Double.parseDouble(obj.jTextField2.getText()));ps2.setDouble(7, Double.parseDouble(obj.jTextField3.getText()));  
  497.       ps2.setDouble(8, Double.parseDouble(obj.jLabel13.getText())); ps2.setDouble(9, Double.parseDouble(obj.jTextField5.getText())); ps2.setDouble(10, Double.parseDouble(obj.jTextField6.getText()));  
  498.       ps2.setString(11, String.format("%tF %<tT", date));       
  499.       if(ps.executeUpdate() == 1 ){  
  500.            JOptionPane.showMessageDialog(null"賣出 !","消息",  JOptionPane.QUESTION_MESSAGE);  
  501.            ps2.executeUpdate() ;  
  502.       }  
  503.        break;  
  504.       }  
  505.       }  
  506.     } catch(Exception e){  
  507.          JOptionPane.showMessageDialog(null"ERROR","消息",  JOptionPane.ERROR_MESSAGE);  
  508.      }  
  509.     }  
  510.       
  511.     public void Top(){  
  512.          
  513.         NO1 nod = new NO1();  
  514.         try{     
  515.         nod.setVisible(true);  
  516.         Read();//得到更新  
  517.         DefaultTableModel n = (DefaultTableModel) nod.jTable1.getModel();  
  518.         n.setRowCount(0);  
  519.         Object[] o = new Object[4];   
  520.           
  521.         for(User u : users){  
  522.             o[0] = u.name ;  
  523.             o[1] = u.SUMPR ;  
  524.             o[2] = u.SUMP ;   
  525.             o[3] = u.SUMC ;  
  526.             n.addRow(o);  
  527.         }  
  528.         }catch(Exception e){  
  529.             e.printStackTrace();  
  530.         }  
  531.         }  
  532.     Deta3 date3 = new Deta3();  
  533.     public void NowSale(){       //最近銷售  
  534.         Statement st = null ;  
  535.         Connection conn = null ;  
  536.         try{  
  537.          date3.setVisible(true);  
  538.         conn =  getConnection();  
  539.         DefaultTableModel mod = (DefaultTableModel) date3.jTable1.getModel();  
  540.         mod.setRowCount(0);  
  541.         st = conn.createStatement();  
  542.         ResultSet rs = st.executeQuery("SELECT * FROM `mydatabaasetimelist`");  
  543.         Object[] o = new Object[11];  
  544.         while(rs.next()){  
  545.             o[0] = rs.getString("Name");  
  546.             o[1] = rs.getInt("count") ;  
  547.             o[2] = rs.getDouble("SUMP");  
  548.             o[3] = rs.getDouble("SUMC");  
  549.             o[4] = rs.getDouble("SUMPR");  
  550.             o[5] = rs.getDouble("Unit Price");  
  551.             o[6] = rs.getDouble("Unit cost");  
  552.             o[7] = rs.getDouble("Unit profit");  
  553.             o[8] = rs.getDouble("Freight") ;  
  554.             o[9] = rs.getDouble("Other") ;  
  555.             o[10] = rs.getString("TIME") ;  
  556.             mod.addRow(o);    
  557.         }  
  558.         }catch(Exception e ){  
  559.             e.printStackTrace();   
  560.         }  
  561.     }  
  562.     /////////////////////////////////////////////////////////////////////////  
  563.    public ImageIcon ReImage(String imagepath , byte[] p){  
  564.        ImageIcon myprc = null ;  
  565.         
  566.        if(imagepath != null){  
  567.            myprc = new ImageIcon(imagepath);  
  568.        }else{//假設有圖片就NEW 沒有就直接回NULL  
  569.            if(p != null)  
  570.            {myprc = new ImageIcon(p);}  
  571.            else  
  572.            {return null;}  
  573.        }  
  574.        Image img = myprc.getImage();  
  575.        img.getScaledInstance(jLabel1.getWidth(), jLabel1.HEIGHT, Image.SCALE_AREA_AVERAGING);  
  576.        ImageIcon Image =  new ImageIcon(img);  
  577.        return Image;  
  578.          
  579.    }  
  580.     public  Connection getConnection() throws ClassNotFoundException, SQLException{  
  581.         Connection conn = null ;  
  582.         Class.forName(com);  
  583.         conn = DriverManager.getConnection(URL);  
  584.         return conn ;  
  585.     }  
  586.     public void Update(){ //更新資料     
  587.         String SQL = "UPDATE `mydatabase` SET `name`= ? ,`price`= ? ,`adress`= ? ,`number`= ? ,`Company`= ? ,`E-MAIL`= ? ,`Image`= ? WHERE `id` = ?";  
  588.         String SQLNotImage = "UPDATE `mydatabase` SET `name`=?,`price`=?,`adress`=?,`number`=?,`Company`=?,`E-MAIL`=? WHERE `id` = ?";  
  589.         PreparedStatement ps = null ;  
  590.         Connection conn = null ;  
  591.         try{  
  592.            conn = getConnection();  
  593.            CheckInput(false);  
  594.             if(ImagePath != null ){  
  595.         ps = conn.prepareStatement(SQL);  
  596.         InputStream Ip = new FileInputStream(new File(ImagePath));   
  597.         ps.setString(1, jTextField1.getText());   
  598.         ps.setDouble(2, Double.parseDouble(jTextField7.getText())); ps.setString(3, jTextField4.getText());  
  599.         ps.setString(4, jTextField2.getText()); ps.setString(5, jTextField5.getText());  
  600.         ps.setString(6, jTextField6.getText());   
  601.         ps.setBlob(7, Ip); ps.setString(8, jTextField3.getText());  
  602.             }else{  
  603.         ps = conn.prepareStatement(SQLNotImage);  
  604.         ps.setString(1, jTextField1.getText());   
  605.         ps.setDouble(2, Double.parseDouble(jTextField7.getText())); ps.setString(3, jTextField4.getText());  
  606.         ps.setString(4, jTextField2.getText()); ps.setString(5, jTextField5.getText());  
  607.         ps.setString(6, jTextField6.getText()); ps.setString(7, jTextField3.getText());  
  608.             }  
  609.         if(ps.executeUpdate() == 1){      
  610.             JOptionPane.showMessageDialog(rootPane,"ID :"+jTextField3.getText()+" 更新成功 ");  
  611.         }else{  
  612.             JOptionPane.showMessageDialog(rootPane,"ID :"+jTextField3.getText()+" 未找到 ! ");}  
  613.         Read();     
  614.         }catch(Exception e ){  
  615.             JOptionPane.showMessageDialog(null"MySql 更新錯誤""錯誤",  JOptionPane.ERROR_MESSAGE);  
  616.             e.printStackTrace();  
  617.         }  
  618.     }  
  619.       
  620.     public void Delete(){//刪除商品資料  
  621.         Connection conn = null ;  
  622.         PreparedStatement ps = null ;  
  623.         try{  
  624.            conn = getConnection();  
  625.            ps = conn.prepareStatement("DELETE FROM `mydatabase` WHERE `id` = ?");  
  626.            ps.setString(1, jTextField3.getText());  
  627.              
  628.            if(ps.executeUpdate() != 0){//使否刪除成功  
  629.                Read();  
  630.                JOptionPane.showMessageDialog(rootPane,"ID :"+jTextField3.getText()+" 刪除成功 ");  
  631.            }else{//失敗顯示未找到視窗提醒  
  632.                JOptionPane.showMessageDialog(rootPane,"ID :"+jTextField3.getText()+" 未找到 ! ");}  
  633.              
  634.         }catch(Exception e){  
  635.             JOptionPane.showMessageDialog(null"MySql 刪除錯誤""錯誤",  JOptionPane.ERROR_MESSAGE);  
  636.             e.printStackTrace();  
  637.         }  
  638.     }   
  639.     public void Insert(){//添加商品  
  640.         //SQL語法  
  641.         String quiry = "INSERT INTO `mydatabase`(`name`, `id`, `price`, `adress`, `number`, `Company`, `E-MAIL`, `Time`, `Image`, `SUMP`, `SUMC`, `SUMPR`) VALUES (?,?,?,?,?,?,?,?,?,0,0,0)";  
  642.         String quiryNotImage = "INSERT INTO `mydatabase`(`name`, `id`, `price`, `adress`, `number`, `Company`, `E-MAIL`, `Time`, `SUMP`, `SUMC`, `SUMPR`) VALUES (?,?,?,?,?,?,?,?,0,0,0)";  
  643.         PreparedStatement ps = null ;  
  644.         Connection conn = null ;  
  645.         try{  
  646.         CheckInput(true);     
  647.         Date date = new Date();    
  648.         conn = getConnection();  
  649.         if(ImagePath != null ){//使否有照片路徑存在  
  650.         InputStream Ip = new FileInputStream(new File(ImagePath));  
  651.         ps = conn.prepareStatement(quiry);//準備聲明  
  652.         ps.setString(1, jTextField1.getText()); ps.setString(2, jTextField3.getText());  
  653.         ps.setDouble(3, Double.parseDouble(jTextField7.getText())); ps.setString(4, jTextField4.getText());  
  654.         ps.setString(5, jTextField2.getText()); ps.setString(6, jTextField5.getText());  
  655.         ps.setString(7, jTextField6.getText()); ps.setString(8, String.format("%tF %<tT",date));  
  656.         ps.setBlob(9, Ip);  
  657.         }else{        
  658.         ps = conn.prepareStatement(quiryNotImage);  
  659.         ps.setString(1, jTextField1.getText()); ps.setString(2, jTextField3.getText());  
  660.         ps.setDouble(3, Double.parseDouble(jTextField7.getText())); ps.setString(4, jTextField4.getText());  
  661.         ps.setString(5, jTextField2.getText()); ps.setString(6, jTextField5.getText());  
  662.         ps.setString(7, jTextField6.getText()); ps.setString(8, String.format("%tF %<tT",date));        
  663.         }  
  664.         ps.executeUpdate() ; //執行  
  665.         Read(); //重新閱讀  
  666.         JOptionPane.showMessageDialog(null"MYSQL : Insert 成功");   
  667.         }catch(Exception e){  
  668.             JOptionPane.showMessageDialog(null"MySql 新增錯誤""錯誤",  JOptionPane.ERROR_MESSAGE);  
  669.             e.printStackTrace();  
  670.         }  
  671.     }  
  672.     LinkedList<User> users ;  
  673.     public void Read() {//讀取  
  674.         DefaultTableModel mod = (DefaultTableModel) jTable1.getModel();  
  675.         mod.setRowCount(0);  
  676.         users = new    LinkedList<User>();  
  677.         Connection conn = null ;  
  678.         Statement st = null;  
  679.         try{  
  680.             conn =  getConnection() ;  
  681.             st = conn.createStatement();  
  682.             ResultSet rs = st.executeQuery("SELECT * FROM `mydatabase`");  
  683.             while(rs.next()){  
  684.                 users.add(new User(rs.getString("name") ,rs.getString("id"),rs.getDouble("price") , rs.getString("adress") , rs.getInt("number"),rs.getString("Company"),rs.getString("E-MAIL"),ReImage(null,rs.getBytes("Image")), rs.getString("Time") , rs.getDouble("SUMP") ,rs.getDouble("SUMC") ,rs.getDouble("SUMPR")));  
  685.             }  
  686.             JTableRead();  
  687.         }catch(Exception e){           
  688.             JOptionPane.showMessageDialog(null"MySql連接錯誤""錯誤",  JOptionPane.ERROR_MESSAGE);  
  689.             e.printStackTrace();  
  690.         }finally{//清空    
  691.             ImagePath = null ;  
  692.             FieldEmpty();  
  693.             }  
  694.     }  
  695.     public void JTableRead(){//Table讀取與顯示  
  696.         DefaultTableModel Mod = (DefaultTableModel) jTable1.getModel();  
  697.         Object[] Tableobj = new Object[7];  
  698.         for(User user : users){  
  699.             Tableobj[0] = user.name ;  
  700.             Tableobj[1] = user.id ;  
  701.             Tableobj[2] = user.number ;  
  702.             Tableobj[3] = user.price ;  
  703.             Tableobj[4] = user.address ;  
  704.             Tableobj[5] = user.Company ;  
  705.             Tableobj[6] = user.MAIL ;  
  706.             Mod.addRow(Tableobj);    
  707.         }  
  708.           
  709.     }  
  710.      
  711.       
  712.       
  713.     private void jMenuItem4ActionPerformed(java.awt.event.ActionEvent evt) {                                             
  714.         // TODO add your handling code here:  
  715.        SetGreen();  
  716.     }                                            
  717.   
  718.     private void jMenuItem3ActionPerformed(java.awt.event.ActionEvent evt) {                                             
  719.         SetNull();  
  720.     }                                            
  721.   
  722.     private void jMenuItem5ActionPerformed(java.awt.event.ActionEvent evt) {                                             
  723.         SetBlue();  
  724.     }                                            
  725.   
  726.     private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {                                             
  727.         // TODO add your handling code here:  
  728.          SetChina();  
  729.     }                                            
  730.   
  731.     private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {                                             
  732.         // TODO add your handling code here  
  733.          SetEnglish();  
  734.     }                                            
  735.   
  736.     private void SaleActionPerformed(java.awt.event.ActionEvent evt) {                                       
  737.         Sale();  
  738.     }                                      
  739.   
  740.     private void formWindowClosing(java.awt.event.WindowEvent evt) {                                     
  741.        WinClose();  
  742.     }                                    
  743.     public void WinClose(){  
  744.        int close = JOptionPane.showConfirmDialog(null"離開??""關閉", JOptionPane.YES_NO_OPTION,JOptionPane.ERROR_MESSAGE,new ImageIcon(this.getClass().getResource("User-Interface-Exit-icon.png")));  
  745.        if(close == JOptionPane.YES_OPTION){  
  746.            try {  
  747.                FileWriter fis = new FileWriter("SET/設定.txt");  
  748.                fis.write(SetInterface+"\t");  
  749.                fis.write(SetInter2);  
  750.                fis.close();  
  751.                System.exit(0);  
  752.            } catch (Exception ex) {  
  753.               ex.printStackTrace();  
  754.            }  
  755.        }  
  756.     }  
  757.     private void BrowActionPerformed(java.awt.event.ActionEvent evt) {                                       
  758.         JFileChooser chooser2 = new JFileChooser();  
  759.         chooser2.setDialogTitle("圖片開啟: ");  
  760.         //  
  761.          chooser2.setFileFilter(new FileTypeFilter(".gif","GIF File"));  
  762.          chooser2.setFileFilter(new FileTypeFilter(".png","PNG File"));//設置文件過濾器   
  763.          chooser2.setFileFilter(new FileTypeFilter(".jpg","JPEG File"));//設置文件過濾器  
  764.         //  
  765.         int openresult = chooser2.showOpenDialog(null);  
  766.         if(openresult == JFileChooser.APPROVE_OPTION){  
  767.             File file =  chooser2.getSelectedFile();  
  768.             ImagePath = file.getAbsolutePath();//透過file絕對路徑  
  769.             jLabel1.setIcon(ReImage(ImagePath, null));  
  770.         }  
  771.     }                                      
  772.   
  773.     private void jMenu5MouseClicked(java.awt.event.MouseEvent evt) {                                      
  774.        WinClose();  
  775.     }                                     
  776.   
  777.     private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {                                           
  778.       Insert();//添加商品  
  779.     }                                          
  780.   
  781.     private void jTable1MouseClicked(java.awt.event.MouseEvent evt) {                                       
  782.          //滑鼠點擊觸發事件  
  783.          TableModel mod = jTable1.getModel();  
  784.          int index = jTable1.getSelectedRow();  
  785.          jTextField1.setText((String) mod.getValueAt(index, 0));  
  786.          jTextField3.setText((String) mod.getValueAt(index, 1));  
  787.          jTextField2.setText(mod.getValueAt(index, 2).toString());  
  788.          jTextField7.setText(mod.getValueAt(index, 3).toString());  
  789.          jTextField4.setText((String) mod.getValueAt(index, 4));  
  790.          jTextField5.setText((String) mod.getValueAt(index, 5));  
  791.          jTextField6.setText((String) mod.getValueAt(index, 6));  
  792.          jLabel1.setIcon(users.get(index).Image);  
  793.          jLabel8.setText(users.get(index).Time);  
  794.     }                                      
  795.   
  796.     private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                           
  797.         Delete();  
  798.     }                                          
  799.   
  800.     private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {                                           
  801.         Update();  
  802.     }                                          
  803.   
  804.     private void DELETEALLActionPerformed(java.awt.event.ActionEvent evt) {                                            
  805.          Connection conn = null ;  
  806.          PreparedStatement ps = null ;  
  807.         try{  
  808.            conn = getConnection();       
  809.            ps = conn.prepareStatement("DELETE FROM `mydatabase` WHERE `id` = ?");  
  810.            for(User u : users){  
  811.            ps.setString(1, u.id);   
  812.            ps.executeUpdate();  
  813.            }   
  814.            Read();  
  815.            JOptionPane.showMessageDialog(rootPane," 全部刪除成功 ");  
  816.         }catch(Exception e){  
  817.             JOptionPane.showMessageDialog(null"MySql 刪除錯誤""錯誤",  JOptionPane.ERROR_MESSAGE);  
  818.             e.printStackTrace();  
  819.         }  
  820.     }                                           
  821.   
  822.     private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {                                           
  823.              Top();//紀錄  
  824.                
  825.     }                                          
  826.   
  827.     private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {                                           
  828.          NowSale();  
  829.     }                                          
  830.   
  831.     private void jMenuItem7ActionPerformed(java.awt.event.ActionEvent evt) {                                             
  832.          JFileChooser chooser = new JFileChooser();  
  833.          chooser.setDialogTitle("匯出");  
  834.           chooser.setFileFilter(new FileTypeFilter("txt" , "文件"));  
  835.          int is = chooser.showSaveDialog(null) ;  
  836.          if(is == JFileChooser.APPROVE_OPTION){       
  837.              try {  
  838.                  BufferedWriter fos = new  BufferedWriter(new FileWriter(chooser.getSelectedFile()));      
  839.                  for(User u : users){  
  840.                  fos.write(u.name+" "+u.price+" "+u.id+" "+u.number+" "+u.Company+" "+u.MAIL+" "+u.address+" "+u.SUMP+" "+u.SUMC+" "+u.SUMPR+"\r\n");  
  841.                  }  
  842.                  fos.close();  
  843.              } catch (IOException ex) {  
  844.                  Logger.getLogger(Date2.class.getName()).log(Level.SEVERE, null, ex);  
  845.              }  
  846.          }  
  847.     }                                            
  848.   
  849.     private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {                                           
  850.        help he = new help();  
  851.        he.setVisible(true);  
  852.          
  853.     }                                          
  854.    public void SetBlue(){  
  855.         jPanel1.setBackground(new Color(153153255));  
  856.         jPanel2.setBackground(new Color(153153255));  
  857.         jLabel1.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(510102), 5));  
  858.         jMenuBar1.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(00153), 4));  
  859.         SetInterface = "SETBLUE";  
  860.    }  
  861.    public void SetGreen(){  
  862.         jPanel1.setBackground(new Color(15325551));  
  863.         jPanel2.setBackground(new Color(15325551));  
  864.         jLabel1.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(1531530), 5));  
  865.         jMenuBar1.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(1532040), 4));  
  866.         SetInterface = "SETGREEN";  
  867.    }  
  868.    public void SetNull(){  
  869.         jPanel1.setBackground(null);  
  870.         jPanel2.setBackground(null);  
  871.         jLabel1.setBorder(null);  
  872.         jMenuBar1.setBorder(null);  
  873.         SetInterface = "SETNULL";  
  874.    }  
  875.    public void SetChina()  
  876.    {  
  877.        jLabel2.setText("商品名 :");  
  878.        jLabel3.setText("電話 :");  
  879.        jLabel4.setText("ID :");  
  880.        jLabel5.setText("地址 :");  
  881.        jLabel6.setText("發行商 :");jLabel9.setText("價格 :");  
  882.        Brow.setText("上傳圖片");  
  883.        Sale.setText("售出");  
  884.        jButton8.setText("銷售量");     
  885.         jTable1.setModel(new DefaultTableModel(  
  886.             new Object [][] {},  
  887.             new String [] {  
  888.                 "商品名 ""ID""電話""價格""地址""發行商""e-mail"  
  889.             }  
  890.         ));    
  891.         obj.jLabel1.setText("銷售數量 :");  
  892.         obj.jLabel2.setText("單價成本 :");  
  893.         obj.jLabel5.setText("單價定價 :");  
  894.         obj.jLabel6.setText("單價利潤 :");  
  895.         obj.jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("總結 :"));  
  896.         obj.jLabel3.setText("結算成本 :");  
  897.         obj.jLabel4.setText("利潤 :");  
  898.         obj.jLabel11.setText("銷售值 :");  
  899.         obj.jButton1.setText("取消");      
  900.         obj.jButton3.setText("確定");    
  901.         obj.jLabel9.setText("運費 :");    
  902.         obj.jLabel10.setText("額外成本 :");  
  903.         SetInter2 = "China";  
  904.    }  
  905.      public void SetEnglish()  
  906.    {  
  907.        jLabel2.setText("Name :");  
  908.        jLabel3.setText("Number :");  
  909.        jLabel4.setText("ID :");  
  910.        jLabel5.setText("Address :");  
  911.        jLabel6.setText("Company :");jLabel9.setText("Price :");  
  912.        Brow.setText("Upload image");  
  913.        Sale.setText("Sold out");  
  914.        jButton8.setText("Sales");     
  915.         jTable1.setModel(new DefaultTableModel(  
  916.             new Object [][] {},  
  917.             new String [] {  
  918.                 "Name ""ID""Number""Price""Address""Company""e-mail"  
  919.             }  
  920.         ));  
  921.         obj.jLabel1.setText("Sales volume :");  
  922.         obj.jLabel2.setText("Unit cost :");  
  923.         obj.jLabel5.setText("Unit Price :");  
  924.         obj.jLabel6.setText("Unit profit :");  
  925.         obj.jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Sum up :"));  
  926.         obj.jLabel3.setText("Settlement costs :");  
  927.         obj.jLabel4.setText("Profit :");  
  928.         obj.jLabel11.setText("Sales :");  
  929.         obj.jButton1.setText("Cancel");      
  930.         obj.jButton3.setText("Yes");    
  931.         obj.jLabel9.setText("Freight  :");   
  932.         obj.jLabel10.setText("Other :");  
  933.         SetInter2 = "ENG";  
  934.    }  
  935.      
  936.       
  937.       
  938.       
  939.       
  940.       
  941.     /**  
  942.      * @param args the command line arguments  
  943.      */  
  944.     public static void main(String args[]) {  
  945.         /* Set the Nimbus look and feel */  
  946.         //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">  
  947.         /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. 
  948.          * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html  
  949.          */  
  950.         try {  
  951.             for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {  
  952.                 if ("Nimbus".equals(info.getName())) {  
  953.                     javax.swing.UIManager.setLookAndFeel(info.getClassName());  
  954.                     break;  
  955.                 }  
  956.             }  
  957.         } catch (ClassNotFoundException ex) {  
  958.             java.util.logging.Logger.getLogger(Date2.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);  
  959.         } catch (InstantiationException ex) {  
  960.             java.util.logging.Logger.getLogger(Date2.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);  
  961.         } catch (IllegalAccessException ex) {  
  962.             java.util.logging.Logger.getLogger(Date2.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);  
  963.         } catch (javax.swing.UnsupportedLookAndFeelException ex) {  
  964.             java.util.logging.Logger.getLogger(Date2.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);  
  965.         }  
  966.         //</editor-fold>  
  967.   
  968.         /* Create and display the form */  
  969.         java.awt.EventQueue.invokeLater(new Runnable() {  
  970.             public void run() {  
  971.                 new Date2().setVisible(true);  
  972.             }  
  973.         });  
  974.     }  
  975.   
  976.     // Variables declaration - do not modify                       
  977.     private javax.swing.JButton Brow;  
  978.     private javax.swing.JButton DELETEALL;  
  979.     private javax.swing.JButton Sale;  
  980.     private javax.swing.JButton jButton2;  
  981.     private javax.swing.JButton jButton3;  
  982.     private javax.swing.JButton jButton4;  
  983.     private javax.swing.JButton jButton5;  
  984.     private javax.swing.JButton jButton6;  
  985.     private javax.swing.JButton jButton8;  
  986.     private javax.swing.JLabel jLabel1;  
  987.     private javax.swing.JLabel jLabel2;  
  988.     private javax.swing.JLabel jLabel3;  
  989.     private javax.swing.JLabel jLabel4;  
  990.     private javax.swing.JLabel jLabel5;  
  991.     private javax.swing.JLabel jLabel6;  
  992.     private javax.swing.JLabel jLabel7;  
  993.     private javax.swing.JLabel jLabel8;  
  994.     private javax.swing.JLabel jLabel9;  
  995.     private javax.swing.JMenu jMenu1;  
  996.     private javax.swing.JMenu jMenu2;  
  997.     private javax.swing.JMenu jMenu3;  
  998.     private javax.swing.JMenu jMenu4;  
  999.     private javax.swing.JMenu jMenu5;  
  1000.     private javax.swing.JMenuBar jMenuBar1;  
  1001.     private javax.swing.JMenuItem jMenuItem1;  
  1002.     private javax.swing.JMenuItem jMenuItem2;  
  1003.     private javax.swing.JMenuItem jMenuItem3;  
  1004.     private javax.swing.JMenuItem jMenuItem4;  
  1005.     private javax.swing.JMenuItem jMenuItem5;  
  1006.     private javax.swing.JMenuItem jMenuItem6;  
  1007.     private javax.swing.JMenuItem jMenuItem7;  
  1008.     private javax.swing.JPanel jPanel1;  
  1009.     private javax.swing.JPanel jPanel2;  
  1010.     private javax.swing.JScrollPane jScrollPane1;  
  1011.     public javax.swing.JTable jTable1;  
  1012.     private javax.swing.JTextField jTextField1;  
  1013.     private javax.swing.JTextField jTextField2;  
  1014.     private javax.swing.JTextField jTextField3;  
  1015.     private javax.swing.JTextField jTextField4;  
  1016.     private javax.swing.JTextField jTextField5;  
  1017.     private javax.swing.JTextField jTextField6;  
  1018.     private javax.swing.JTextField jTextField7;  
  1019.     // End of variables declaration                     
  1020.   
  1021.     private help help() {  
  1022.         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.  
  1023.     }  
  1024. }  
  1025. class User {  
  1026.     String name ;  
  1027.     String  id  ;  
  1028.     double price ;    
  1029.     String address;   
  1030.     int number ;      
  1031.     String Company ;      
  1032.     String MAIL ;     
  1033.     ImageIcon Image ;  
  1034.     String Time;  
  1035.     double SUMP , SUMC , SUMPR ;  
  1036. public User(String name ,String  id,double price , String address , int number,String Company,String MAIL,ImageIcon Image  
  1037. , String Time , double SUMP ,double SUMC ,double SUMPR){  
  1038.     this.name = name ;this.id = id ;    
  1039.     this.price = price ;this.address = address ;  
  1040.     this.number = number ;this.Company = Company ;  
  1041.     this.MAIL = MAIL ;  this.Time = Time ;  
  1042.     this.Image = Image ;this. SUMP = SUMP ;  
  1043.     this. SUMC = SUMC ;this. SUMPR = SUMPR ;  
  1044. }  
  1045.   
  1046.       

  FileTypeFilter.class


  1. public class FileTypeFilter extends FileFilter{  
  2.  private final String extension ;//延期  
  3.  private final String description;//描述  
  4.  public  FileTypeFilter( String extension,String description){  
  5.      this.extension = extension ;  
  6.      this.description= description ;  
  7.  }  
  8.     @Override  
  9.     public boolean accept(File f) {  
  10.        if(f.isDirectory()){  
  11.            return true;  
  12.        }  
  13.        return f.getName().endsWith(extension);  
  14.     }  
  15.   
  16.     @Override  
  17.     public String getDescription() {  
  18.         return description+String.format(" (*%s)", extension);  
  19.     }  










沒有留言:

張貼留言

注意:只有此網誌的成員可以留言。