?? frame1.java~1~
字號:
package studentinfo;
import java.lang.*;
import java.lang.Object.*;
import java.sql.*;
import java.util.*;
import javax.swing.event.*;
import javax.swing.table.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
/**
* <p>Title: StudentINFO</p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2005</p>
* <p>Company: </p>
* @author 楊一寧
* @version 1.0
*/
public class Frame1 extends JFrame {
JPanel contentPane;
JLabel jLabel1 = new JLabel();
JLabel jLabel2 = new JLabel();
JLabel jLabel3 = new JLabel();
JLabel jLabel4 = new JLabel();
JTextField jTextField1 = new JTextField();
JTextField jTextField2 = new JTextField();
JTextField jTextField3 = new JTextField();
JTextField jTextField4 = new JTextField();
JButton jButton1 = new JButton();
JButton jButton2 = new JButton();
JButton jButton3 = new JButton();
JButton jButton4 = new JButton();
Vector vector; // 聲明一個向量對象
String title[] = {"學號","姓名","所屬學院","所屬班級"}; // 二維表列名
Connection connection = null; // 聲明Connection接口對象connection
ResultSet rSet = null; // 定義數據庫查詢的結果集
Statement statement = null; // 定義查詢數據庫的Statement對象
AbstractTableModel tm;
JMenuBar jMenuBar1 = new JMenuBar();
JMenu jMenu1 = new JMenu();
JMenu jMenuhelp = new JMenu();
JMenuItem jMenuabout = new JMenuItem();
JMenuItem jMenuexit = new JMenuItem(); // 聲明一個AbstractTableModel類對象tm
//Construct the frame
public Frame1() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
//Component initialization
private void jbInit() throws Exception {
contentPane = (JPanel) this.getContentPane();
jLabel1.setFont(new java.awt.Font("Dialog", 0, 15));
jLabel1.setForeground(Color.black);
jLabel1.setDebugGraphicsOptions(0);
jLabel1.setToolTipText("");
jLabel1.setVerifyInputWhenFocusTarget(true);
jLabel1.setText("學號");
jLabel1.setBounds(new Rectangle(40, 75, 47, 23));
contentPane.setLayout(null);
this.setSize(new Dimension(400, 300));
this.setTitle("學生基本信息表");
jLabel2.setFont(new java.awt.Font("Dialog", 0, 15));
jLabel2.setToolTipText("");
jLabel2.setText("姓名");
jLabel2.setBounds(new Rectangle(39, 118, 56, 25));
jLabel3.setFont(new java.awt.Font("Dialog", 0, 15));
jLabel3.setToolTipText("");
jLabel3.setText("所屬學院");
jLabel3.setBounds(new Rectangle(38, 155, 63, 27));
jLabel4.setFont(new java.awt.Font("Dialog", 0, 15));
jLabel4.setText("所屬班級");
jLabel4.setBounds(new Rectangle(39, 195, 71, 29));
jTextField1.setText("");
jTextField1.setBounds(new Rectangle(106, 77, 91, 23));
jTextField2.setText("");
jTextField2.setBounds(new Rectangle(107, 120, 89, 24));
jTextField3.setText("");
jTextField3.setBounds(new Rectangle(108, 161, 88, 25));
jTextField4.setText("");
jTextField4.setBounds(new Rectangle(107, 201, 91, 26));
jButton1.setBounds(new Rectangle(252, 73, 73, 25));
jButton1.setFont(new java.awt.Font("Dialog", 0, 15));
jButton1.setToolTipText("");
jButton1.setText("添加");
jButton2.setBounds(new Rectangle(252, 117, 74, 28));
jButton2.setFont(new java.awt.Font("Dialog", 0, 15));
jButton2.setVerifyInputWhenFocusTarget(true);
jButton2.setText("更新");
jButton2.addActionListener(new Frame1_jButton2_actionAdapter(this));
jButton3.setBounds(new Rectangle(252, 162, 75, 28));
jButton3.setFont(new java.awt.Font("Dialog", 0, 15));
jButton3.setToolTipText("");
jButton3.setText("刪除");
jButton4.setBounds(new Rectangle(254, 204, 73, 30));
jButton4.setFont(new java.awt.Font("Dialog", 0, 15));
jButton4.setToolTipText("");
jButton4.setText("取消");
jButton4.addActionListener(new Frame1_jButton4_actionAdapter(this));
jMenu1.setActionCommand("文件");
jMenu1.setText("文件");
jMenuhelp.setAction(null);
jMenuhelp.setActionCommand("幫助");
jMenuhelp.setText("幫助");
jMenuabout.setNextFocusableComponent(null);
jMenuabout.setPreferredSize(new Dimension(55, 21));
jMenuabout.setToolTipText("");
jMenuabout.setActionCommand("關于");
jMenuabout.setSelected(false);
jMenuabout.setText("關于");
jMenuabout.addActionListener(new Frame1_jMenuabout_ActionAdapter(this));
jMenuexit.setActionCommand("退出");
jMenuexit.setText("退出");
contentPane.add(jLabel1, null);
contentPane.add(jLabel2, null);
contentPane.add(jLabel3, null);
contentPane.add(jLabel4, null);
contentPane.add(jTextField1, null);
contentPane.add(jTextField2, null);
contentPane.add(jTextField3, null);
contentPane.add(jTextField4, null);
contentPane.add(jButton1, null);
contentPane.add(jButton2, null);
contentPane.add(jButton3, null);
contentPane.add(jButton4, null);
jMenuBar1.add(jMenu1);
jMenu1.addSeparator();
jMenu1.add(jMenuexit);
jMenuBar1.add(jMenuhelp);
jMenuhelp.add(jMenuabout);
this.setJMenuBar(jMenuBar1);
}
//File | Exit action performed
public void jMenuexit_ActionPerformed(ActionEvent e) {
System.exit(0);
}
//Help | About action performed
public void jMenuabout_ActionPerformed(ActionEvent e) {
Frame1_AboutBox dlg = new Frame1_AboutBox(this);
Dimension dlgSize = dlg.getPreferredSize();
Dimension frmSize = getSize();
Point loc = getLocation();
dlg.setLocation( (frmSize.width - dlgSize.width) / 2 + loc.x,
(frmSize.height - dlgSize.height) / 2 + loc.y);
dlg.setModal(true);
dlg.pack();
dlg.show();
}
class Frame1_jMenuabout_ActionAdapter
implements ActionListener {
Frame1 adaptee;
Frame1_jMenuabout_ActionAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jMenuabout_ActionPerformed(e);
}
}
//Overridden so we can exit when window is closed
protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}
void jButton1_actionPerformed(ActionEvent e) { // 處理添加按鈕的ActionEvent
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // 實例化JDBC-ODBC橋的驅動
connection = DriverManager.getConnection("jdbc:odbc:local","sa","hunterd"); // 連接數據庫
// 創建Statement接口對象
Statement statement = connection.createStatement();
statement.executeUpdate("insert * into stu_info values ('" + jTextField1.getText() +"','" + jTextField2.getText()+"','" +jTextField3.getText()+"','"+jTextField4.getText()+ "')"); // 執行增加新的數據記錄語句,向stu_info 表中添加記錄
// 清空信息框
jTextField1.setText("");
jTextField2.setText("");
jTextField3.setText("");
jTextField4.setText("");
}
catch(SQLException ex){ // 捕捉異常
System.out.println("\nERROR:----- SQLException -----\n");
while (ex != null) {
System.out.println("Message: " + ex.getMessage());
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("ErrorCode: " + ex.getErrorCode());
ex = ex.getNextException();
}
}
catch(Exception ex ) {
ex.printStackTrace();
}
finally {
try {
if(statement != null) {
statement.close(); // 關閉Statement接口實例
}
if(connection != null) {
connection.close(); // 關閉Connection接口實例
}
}
catch (SQLException ex) {
System.out.println("\nERROR:----- SQLException -----\n");
System.out.println("Message: " + ex.getMessage( ));
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("ErrorCode: " + ex.getErrorCode());
}
}
}
void jButton3_actionPerformed(ActionEvent e) {// 處理刪除按鈕的ActionEvent
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // 實例化JDBC-ODBC橋的驅動
connection = DriverManager.getConnection("jdbc:odbc:local","sa","hunterd"); // 連接數據庫
// 創建Statement接口對象
Statement statement = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
rSet = statement.executeQuery("select 學號 from stu_info ");
if (rSet.next()==true){ // 判斷數據庫中是否有要刪除的記錄,如沒有則顯示提示框
statement.executeUpdate("delete from stu_info where 學號='"+jTextField1.getText()+"'"); // 刪除stu_info表中對應學號的數據記錄
}
else {
JOptionPane msg = new JOptionPane();
JOptionPane.showMessageDialog(Frame1.this, "數據庫中沒有您刪除的學號", "數據庫中沒有您刪除的學號!", 1);
// 清空信息框
jTextField1.setText("");
jTextField2.setText("");
jTextField3.setText("");
jTextField4.setText("");
}
}
catch(SQLException ex){ // 捕捉異常
System.out.println("\nERROR:----- SQLException -----\n");
while (ex != null) {
System.out.println("Message: " + ex.getMessage());
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("ErrorCode: " + ex.getErrorCode());
ex = ex.getNextException();
}
}
catch(Exception ex ) {
ex.printStackTrace();
}
finally {
try {
if(statement != null) {
statement.close(); // 關閉Statement接口實例
}
if(connection != null) {
connection.close(); // 關閉Connection接口實例
}
}
catch (SQLException ex) {
System.out.println("\nERROR:----- SQLException -----\n");
System.out.println("Message: " + ex.getMessage( ));
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("ErrorCode: " + ex.getErrorCode());
}
}
}
void jButton4_actionPerformed(ActionEvent e) {
jTextField1.setText("");
jTextField2.setText("");
jTextField3.setText("");
jTextField4.setText("");
}
void jButton2_actionPerformed(ActionEvent e) { // 處理jButton2(修改按鈕)的ActionEvent
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // 實例化JDBC-ODBC橋的驅動
connection = DriverManager.getConnection("jdbc:odbc:local","sa","hunterd"); // 連接數據庫
// 創建Statement接口對象
statement = connection.createStatement();
statement.executeUpdate("insert into stu_info values ('" + jTextField1.getText() +"','" + jTextField2.getText()+"','" +jTextField3.getText()+"','"+jTextField4.getText()+ "')"); // 更新stu_info表中輸入學號的記錄
// 清空信息框
jTextField1.setText("");
jTextField2.setText("");
jTextField3.setText("");
jTextField4.setText("");
}
catch(SQLException ex){ // 捕捉異常
System.out.println("\nERROR:----- SQLException -----\n");
while (ex != null) {
System.out.println("Message: " + ex.getMessage());
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("ErrorCode: " + ex.getErrorCode());
ex = ex.getNextException();
}
}
catch(Exception ex ) {
ex.printStackTrace();
}
finally {
try {
if(statement != null) {
statement.close(); // 關閉Statement接口實例
}
if(connection != null) {
connection.close(); // 關閉Connection接口實例
}
}
catch (SQLException ex) {
System.out.println("\nERROR:----- SQLException -----\n");
System.out.println("Message: " + ex.getMessage( ));
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("ErrorCode: " + ex.getErrorCode());
}
}
}
}
class Frame1_jButton4_actionAdapter implements java.awt.event.ActionListener {
Frame1 adaptee;
Frame1_jButton4_actionAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton4_actionPerformed(e);
}
}
class Frame1_jButton2_actionAdapter implements java.awt.event.ActionListener {
Frame1 adaptee;
Frame1_jButton2_actionAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton2_actionPerformed(e);
}
}
class Frame1_jButton1_actionAdapter implements java.awt.event.ActionListener {
Frame1 adaptee;
Frame1_jButton1_actionAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton1_actionPerformed(e);
}
}
class Frame1_jButton3_actionAdapter implements java.awt.event.ActionListener {
Frame1 adaptee;
Frame1_jButton3_actionAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton3_actionPerformed(e);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -