StaticPanel.java
上传用户:liming9091
上传日期:2014-10-27
资源大小:3376k
文件大小:6k
源码类别:

Java编程

开发平台:

Java

  1. package manpowersystem;
  2. /**
  3.  * <p>Title: </p>
  4.  * <p>Description: </p>
  5.  * <p>Copyright: Copyright (c) 2003</p>
  6.  * <p>Company: </p>
  7.  * @author not attributable
  8.  * @version 1.0
  9.  */
  10. import java.io.*;
  11. import java.util.*;
  12. import java.awt.*;
  13. import java.awt.event.*;
  14. import javax.swing.*;
  15. import javax.swing.event.*;
  16. import javax.swing.border.*;
  17. import javax.swing.table.*;
  18. import com.borland.jbcl.layout.*;
  19. public class StaticPanel extends JFrame {
  20.     XYLayout xYLayout1 = new XYLayout();
  21.     JButton jDelRecordButton = new JButton();
  22.     JButton jExitButton = new JButton();
  23.     JScrollPane jStaticScrollPane = new JScrollPane();
  24.     JTable jStaticTable = new JTable();
  25.     boolean bCanDel = true;
  26.     int intDelLines;         //显示所选的行数
  27.     String[] arrField = {"工 号", "姓 名", "上班时间", "下班时间","请假时间","备 注"};
  28.     Object[][] arrData = {};        //设定表格的字段
  29.     Database database = new Database(); //数据库存取对象
  30.     RecordItem item = new RecordItem(); //每一条数据记录
  31.     DefaultTableModel tableModel; //表格模型
  32.     int intRow;              //显示所选的行数
  33.     int intCol;              //显示所选的行数
  34.     int intEmploreeID;       //员工工号
  35.     String strName;          //员工姓名
  36.     Date dateTime;           //确切记录
  37.     String strDescribe;      //备注
  38.     public StaticPanel() {
  39.         try {
  40.             jbInit();
  41.         }
  42.         catch ( Exception e ) {
  43.             e.printStackTrace();
  44.         }
  45.     }
  46.     public static void main( String[] args ) {
  47.         StaticPanel tablePanel1 = new StaticPanel();
  48.         tablePanel1.validate();
  49.         tablePanel1.setVisible( true );
  50.     }
  51.     private void jbInit() throws Exception {
  52.         DefaultTableModel tableModel = new DefaultTableModel( arrData, arrField );
  53.         jStaticTable = new JTable(tableModel);
  54.         jExitButton.addActionListener(new ActionListener(this));
  55.         jStaticScrollPane.getViewport().add( jStaticTable, null );
  56.         this.setTitle("信息统计页面");
  57.         this.getContentPane().setBackground( new Color( 210, 138, 177 ) );
  58.         this.getContentPane().setLayout( xYLayout1 );
  59.         jDelRecordButton.setBackground( new Color( 212, 158, 217 ) );
  60.         jDelRecordButton.setFont( new java.awt.Font( "DialogInput", 1, 16 ) );
  61.         jDelRecordButton.setText( "删除记录" );
  62.         jDelRecordButton.addActionListener( new java.awt.event.ActionListener() {
  63.             public void actionPerformed( ActionEvent e ) {
  64.                 jDelRecordButton_actionPerformed( e );
  65.             }
  66.         } );
  67.         jExitButton.setBackground( new Color( 212, 158, 217 ) );
  68.         jExitButton.setFont( new java.awt.Font( "DialogInput", 1, 16 ) );
  69.         jExitButton.setText( "退出" );
  70.         jExitButton.addActionListener( new java.awt.event.ActionListener() {
  71.             public void actionPerformed( ActionEvent e ) {
  72.                 jExitButton_actionPerformed( e );
  73.             }
  74.         } );
  75.         addWindowListener( new WindowAdapter() {
  76.             public void windowClosing( WindowEvent e ) {
  77.                 dispose();
  78.             }
  79.         } );
  80.         jStaticScrollPane.getViewport().setBackground(new Color(210, 138, 177));
  81.         this.getContentPane().add(jStaticScrollPane, new XYConstraints(4, 4, 462, 420));
  82.         this.getContentPane().add(jExitButton, new XYConstraints(266, 462, 102, 52));
  83.         this.getContentPane().add(jDelRecordButton,  new XYConstraints(85, 462, 102, 52));
  84.         jStaticScrollPane.getViewport().add(jStaticTable, null);
  85.         this.getContentPane().add(jStaticScrollPane,     new XYConstraints(4, 2, 463, 420));
  86.         this.setSize( 470, 550 );
  87.         this.setLocation( 230, 100 );
  88.         this.setResizable( false );
  89.         UpdateRecord();
  90.     }
  91.     void jExitButton_actionPerformed( ActionEvent e ) {
  92.         this.dispose();
  93.     }
  94.     void jDelRecordButton_actionPerformed( ActionEvent e ) {
  95.         DelRecord();
  96.     }
  97.     public void DelRecord() {
  98.         jStaticScrollPane.getViewport().add( jStaticTable, null );
  99.         intRow = jStaticTable.getSelectedRow();
  100.         if (intRow == -1)
  101.             return;
  102.         try {
  103.             database.DeleteData( tableModel.getValueAt( intRow, 0 ).toString() );
  104.         }
  105.         catch ( Exception e ) {
  106.             e.printStackTrace();
  107.         }
  108.         UpdateRecord(); //更新表格
  109.     }
  110.     public void UpdateRecord() {
  111.         Object[][] arrTmp = {}; //设定表格的字段
  112.         tableModel = new DefaultTableModel( arrTmp, arrField );
  113.         jStaticTable = new JTable( tableModel );
  114.         jStaticScrollPane.getViewport().add( jStaticTable, null );
  115.         try {
  116.             RecordItem[] result = new RecordItem[ 100 ];
  117.             for ( int j = 0; j < 100; j++ )
  118.                 result[ j ] = new RecordItem();
  119.             result = database.AccessData();
  120.             for ( int i = 0; i < result.length; i++ ) {
  121.                 Object newdata[] = {result[ i ].GetEmployeeID(),
  122.                     result[ i ].GetEmployeeName(),
  123.                     result[ i ].GetOnWorkTime(),
  124.                     result[ i ].GetOffWorkTime(),
  125.                     result[ i ].GetLeaveWorkTime(),
  126.                     result[ i ].GetDescribe()};
  127.                 String strTmp = result[ i ].GetEmployeeID();
  128.                 if ( strTmp.trim().length() == 0 )
  129.                     continue;
  130.                 tableModel.addRow( newdata );
  131.             }
  132.         }
  133.         catch ( Exception e ) {
  134.             e.printStackTrace();
  135.         }
  136.     }
  137. }
  138. class ActionListener implements java.awt.event.ActionListener {
  139.     StaticPanel adaptee;
  140.     ActionListener(StaticPanel adaptee) {
  141.         this.adaptee = adaptee;
  142.     }
  143.     public void actionPerformed(ActionEvent e) {
  144.         adaptee.jExitButton_actionPerformed(e);
  145.     }
  146. }