⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 projectrecordtable.java

📁 这是一个JAVA开发的公司资源预约系统
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
/**************************************************
*文件名:	ProjectRecordTable.java
*功能:	项目记录管理子系统
***************************************************/

import java.io.*;
import java.util.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import javax.swing.border.*;
import javax.swing.table.*;
import java.sql.*; 

class ProjectRecordTable extends JFrame {
   
   public ProjectRecordTable(conDB conapp) {

	this.conIns = conapp;
	
	setTitle("项目记录");
      setSize(700,500);
      setResizable(false);
      setLocation(150,50);
      addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent e) {
            dispose();
         }
      });

	openDB();
	createRecordGUI();
	loadData();
   }   

    private void createRecordGUI() {

      int r=(int)(Math.random()*155);
      int g=(int)(Math.random()*155);
      int b=(int)(Math.random()*155);


	//面板panelLabel设置
	panelLabel.setLayout(new GridLayout( labels.length, 1));                               
	//加载标签
	for ( int i = 0; i < labels.length; i++ )
		panelLabel.add(new JLabel(labels[i], 0) );

	//面板panelText设置
	panelText.setLayout(new GridLayout(labels.length, 1));
	try{
		ResultSetMetaData rsmd =conIns.rs.getMetaData();
		for(int i =1; i<=rsmd.getColumnCount(); i++)
		{
			//文本框属性设置
			JTextField txtField = new JTextField(20);
			txtField.setEditable(false);
			txtField.setForeground(new Color(r,g,b));
			txtField.setBackground(new Color(240,255,240));
			
			fields.add(txtField);
			panelText.add(txtField);
		}
	}catch (Exception e) {
		System.out.print("Error in load TextField." +e);
   		System.exit(1); 
	}

	//面板panel_label_text设置
	panel_label_text.setLayout(new GridLayout(1,2));	
	panel_label_text.add(panelLabel);
	panel_label_text.add(panelText);
	
	//面板panelButtonGroup1设置
	panelButtonGroup1.setLayout(new GridLayout(1,4));
	setButtonGroup1();
	panelButtonGroup1.add(button_first);
	panelButtonGroup1.add(button_previous);
	panelButtonGroup1.add(button_next);
	panelButtonGroup1.add(button_last);

	//面板panelButtonGroup2设置
	panelButtonGroup2.setLayout(new GridLayout(1,6));
	setButtonGroup2();
	panelButtonGroup2.add(button_insert);
	panelButtonGroup2.add(button_update);
	panelButtonGroup2.add(button_delete);
	panelButtonGroup2.add(button_commite);
	panelButtonGroup2.add(button_cancel);
	panelButtonGroup2.add(button_quit);
	
	//面板panel_buttongroup1_label_text_buttongruop2设置
	panel_buttongroup1_label_text_buttongruop2.setLayout(new BorderLayout());
	panel_buttongroup1_label_text_buttongruop2.add(panelButtonGroup1,"North");
	panel_buttongroup1_label_text_buttongruop2.add(panel_label_text,"Center");
	panel_buttongroup1_label_text_buttongruop2.add(panelButtonGroup2,"South");

	Border operEtched=BorderFactory.createEtchedBorder();
       Border operTitled=BorderFactory.createTitledBorder
      		(operEtched,"数据库操作显示",TitledBorder.CENTER,
         		TitledBorder.TOP,new Font("SansSerif",Font.BOLD,20),
         			Color.red);
      panel_buttongroup1_label_text_buttongruop2.setBorder(operTitled);

	  
	//面板panelQuery设置
	panelQuery.setLayout(new GridLayout(1,3));
	button_que.addActionListener(new ActionListener(){
		public  void actionPerformed(ActionEvent e){
			dataQuery();
		}
	});
	panelQuery.add(label_que);
	panelQuery.add(txtFieldQue);
	panelQuery.add(button_que);
	
	//表格设置	
	//建立表格
	table_que = new JTable(tm);
	table_que.setToolTipText("显示全部查询结果");
	table_que.setCellSelectionEnabled(false);
	table_que.setShowVerticalLines(true);
	table_que.setShowHorizontalLines(true);
	//table_que.setEnabled(false);

	//建立scroll Pane
	panelScroll = new JScrollPane(table_que);
	
	//面板panelTable设置
	panelTable.setLayout(new BorderLayout());
	panelTable.add(panelScroll,"Center");
	
	Border queryEtched=BorderFactory.createEtchedBorder();
      Border queryTitled=BorderFactory.createTitledBorder
      		(queryEtched,"数据库查询显示",TitledBorder.CENTER,
         		TitledBorder.TOP,new Font("SansSerif",Font.BOLD,20),
         			Color.red);
      panelQuery.setBorder(queryTitled);
	
	//组成整体布局
      contentPane = getContentPane();
	contentPane.setLayout(new BorderLayout());
	contentPane.add(panelQuery,"North");
	contentPane.add(panelTable, "Center");
	contentPane.add(panel_buttongroup1_label_text_buttongruop2,"South");

   }

   private void setButtonGroup1() {
	button_first.addActionListener(new ActionListener(){
		public  void actionPerformed(ActionEvent e){
			showfirst();
		}
	});
	
	button_previous.addActionListener(new ActionListener(){
		public  void actionPerformed(ActionEvent e){
			showprevious();
		}
	});
	button_next.addActionListener(new ActionListener(){
		public  void actionPerformed(ActionEvent e){
			shownext();
		}
	});
	button_last.addActionListener(new ActionListener(){
		public  void actionPerformed(ActionEvent e){
			showlast();
		}
	});
   	
   }
   

   private void setButtonGroup2() {
	button_insert.addActionListener(new ActionListener(){
		public  void actionPerformed(ActionEvent e){
			insertData();
		}
	});
	button_update.addActionListener(new ActionListener(){
		public  void actionPerformed(ActionEvent e){
			updateData();
		}
	});
	button_delete.addActionListener(new ActionListener(){
		public  void actionPerformed(ActionEvent e){
			deleteData();
		}
	});
	button_commite.addActionListener(new ActionListener(){
		public  void actionPerformed(ActionEvent e){
			commitData();
		}
	});
	button_cancel.addActionListener(new ActionListener(){
		public  void actionPerformed(ActionEvent e){
			cancelData();
		}
	});
	button_quit.addActionListener(new ActionListener(){
		public  void actionPerformed(ActionEvent e){
			dispose();

		}
	});

   }


   private void showfirst() {
   	try {
	   	conIns.rs.first();
		loadData();
		enableButton();
   	}catch (Exception e) {
   		System.out.print("Error in showfirst." +e);
   		System.exit(1); 

	}
   }

   private void showprevious() {
   	try {
	   	conIns.rs.previous();
		loadData();
		enableButton();
   	}catch (Exception e) {
   		System.out.print("Error in showprevious." +e);
   		System.exit(1); 

	}
   }

   private void shownext() {
   	try {
	   	conIns.rs.next();
		loadData();
		enableButton();
   	}catch (Exception e) {
   		System.out.print("Error in shownext." +e);
   		System.exit(1); 

	}
   }

   private void showlast() {
   	try {
	   	conIns.rs.last();
		loadData();
		enableButton();
   	}catch (Exception e) {
   		System.out.print("Error in showlast." +e);
   		System.exit(1); 

	}
   }

   private void insertData() {
   	isInsert = true;
   	panelButtonGroup1.setVisible(false);
	button_insert.setEnabled(false);
	button_update.setEnabled(false);
	button_delete.setEnabled(false);
	button_commite.setEnabled(true);
	button_cancel.setEnabled(true);
	for(int i=1; i<=fields.size(); i++){
		JTextField txtField = (JTextField) fields.get(i-1);
		txtField.setText("");
		txtField.setEditable(true);
		txtField.setBackground(Color.white);

	}
	try{
		conIns.rs.moveToInsertRow();
	}catch(Exception e){
		System.out.print("Error in insert Data." +e);
   		System.exit(1); 

	}
   }


   private void updateData(){
   	panelButtonGroup1.setVisible(false);
	button_insert.setEnabled(false);
	button_update.setEnabled(false);
	button_delete.setEnabled(false);
	button_commite.setEnabled(true);
	button_cancel.setEnabled(true);
	for(int i=1; i<=fields.size(); i++){
		JTextField txtField = (JTextField) fields.get(i-1);
		txtField.setEditable(true);
		txtField.setBackground(Color.white);
	}
	try{
		conIns.rs.moveToCurrentRow();
	}catch(Exception e){
		System.out.print("Error in update Data." +e);
   		System.exit(1); 

	}
   }


   private void commitData(){
   	try{

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -