?? panel1.java
字號:
.add(jLabel3)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jTextField2)
.add(1, 1, 1)))))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.addContainerGap()
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(jLabel1)
.add(jComboBox1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(jButton3)
.add(jButton2)
.add(jButton1)))
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(jLabel3)
.add(jTextField2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(jLabel2)
.add(jTextField1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jLabel4)
.add(jScrollPane2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 73, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
.add(18, 18, 18)
.add(jScrollPane1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 143, Short.MAX_VALUE)
.addContainerGap())
);
}// </editor-fold>//GEN-END:initComponents
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed
// TODO 將在此處添加您的處理代碼:
//刪除
//*從數據庫、jTable1[刪除]當前表格選中行*//
int x = jTable1.getSelectedRow();//得到jTable1當前選中的行號
if(x == -1)return;
if(JOptionPane.CANCEL_OPTION == JOptionPane.showConfirmDialog(this,"確實要刪除當前表格選中行嗎?","刪除",JOptionPane.OK_CANCEL_OPTION,JOptionPane.QUESTION_MESSAGE ))return;
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver") ;//載入JDBC/ODBC橋接驅動程序
Connection con =DriverManager.getConnection("jdbc:odbc:Graduate","","");//連接數據庫
PreparedStatement pstmt =con.prepareStatement("delete from subject where name=? and year1=?");//年份+題目可唯一標識一條記錄
pstmt.setString(1,jTable1.getValueAt(x,0).toString());//設置SQL語句參數
pstmt.setInt(2,Integer.parseInt(jComboBox1.getSelectedItem().toString()));
pstmt.executeUpdate();//執行SQL語句更新數據庫
pstmt.close();//關閉語句句柄
((DefaultTableModel)jTable1.getModel()).removeRow(x);//從jTable1中刪除該行記錄
}
catch(Exception e1){e1.printStackTrace();}
refresh();
}//GEN-LAST:event_jButton3ActionPerformed
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed
// TODO 將在此處添加您的處理代碼:
//修改
//*[修改]jTable1中選中的行信息到數據庫,并更新jTable1*//
int x = jTable1.getSelectedRow();//得到jTable1當前選中的行號
if(x == -1)return;
if(JOptionPane.CANCEL_OPTION == JOptionPane.showConfirmDialog(this,"確實要修改當前表格選中行嗎?","修改",JOptionPane.OK_CANCEL_OPTION,JOptionPane.QUESTION_MESSAGE ))return;
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver") ;//載入JDBC/ODBC橋接驅動程序
Connection con =DriverManager.getConnection("jdbc:odbc:Graduate","","");//連接數據庫
PreparedStatement pstmt =con.prepareStatement(
"update subject set name=?,number=?,request=? where name=? and year1=?");
//*設置SQL語句參數,注意:這里省略了對參數做合法性檢查*//
pstmt.setString(1,jTextField1.getText());
pstmt.setInt(2,Integer.parseInt(jTextField2.getText()));
pstmt.setString(3,jTextArea1.getText());
pstmt.setString(4,jTable1.getValueAt(x,0).toString());//年份+題目可唯一標識一條記錄
pstmt.setInt(5,Integer.parseInt(jComboBox1.getSelectedItem().toString()));//
pstmt.executeUpdate();//執行SQL語句更新數據庫
pstmt.close();//關閉語句句柄
}
catch(Exception e1){e1.printStackTrace();}
//修改jTable1,所有字段都可按String類型設置,因為...
DefaultTableModel tm=(DefaultTableModel)jTable1.getModel();
tm.setValueAt(jTextField1.getText(),x,0);
tm.setValueAt(jTextField2.getText(),x,1);
tm.setValueAt(jTextArea1.getText(),x,2);
refresh();
}//GEN-LAST:event_jButton2ActionPerformed
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
// TODO 將在此處添加您的處理代碼:
//添加
//*將新記錄[添加]到數據庫,并追加到jTable1中*//
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver") ;//載入JDBC/ODBC橋接驅動程序
Connection con =DriverManager.getConnection("jdbc:odbc:Graduate","","");//連接數據庫
PreparedStatement pstmt =con.prepareStatement(
"insert into subject(id,name,number,request,year1)values(?,?,?,?,?)");
//*設置SQL語句參數,注意:這里省略了對參數做合法性檢查*//
//設置參數
Statement stmt =con.createStatement();
ResultSet rs = stmt.executeQuery("select max(id) as maxid from subject");
int maxid = 0;
while(rs.next()){maxid = rs.getInt(1);}
maxid++;//計算新記錄流水id,即在表subject最大id加1
pstmt.setInt(1,maxid);
pstmt.setString(2,jTextField1.getText());
pstmt.setInt(3,Integer.parseInt(jTextField2.getText()));
pstmt.setString(4,jTextArea1.getText());
pstmt.setInt(5,Integer.parseInt(jComboBox1.getSelectedItem().toString()));
//
pstmt.executeUpdate();//執行SQL語句更新數據庫
pstmt.close();//關閉語句句柄
}
catch(Exception e1){e1.printStackTrace();}
//加入jTable1
Vector vt = new Vector();
vt.addElement(jTextField1.getText());
vt.addElement(Integer.parseInt(jTextField2.getText()));
vt.addElement(jTextArea1.getText());
((DefaultTableModel)jTable1.getModel()).addRow(vt);
refresh();
}//GEN-LAST:event_jButton1ActionPerformed
private void jTable1MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jTable1MouseClicked
// TODO 將在此處添加您的處理代碼:
if(evt.getClickCount()!=2)return;//檢測非雙擊返回
int x=jTable1.getSelectedRow();//獲取選中行號
jTextField1.setText(jTable1.getValueAt(x,0).toString());
jTextField2.setText(jTable1.getValueAt(x,1).toString());
jTextArea1.setText(jTable1.getValueAt(x,2).toString());
}//GEN-LAST:event_jTable1MouseClicked
private void jComboBox1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jComboBox1ActionPerformed
// TODO 將在此處添加您的處理代碼:
DefaultTableModel tm=(DefaultTableModel) jTable1.getModel();
tm.setRowCount(0);
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:Graduate","","");
PreparedStatement pstmt=con.prepareStatement("select name,number,request from subject where year1=?");
pstmt.setInt(1,Integer.parseInt(jComboBox1.getSelectedItem().toString()));
ResultSet rs=pstmt.executeQuery();
while(rs.next()){
Vector vt=new Vector();
vt.addElement(rs.getString(1));
vt.addElement(rs.getString(2));
vt.addElement(rs.getString(3));
tm.addRow(vt);
}
}catch(Exception e){e.printStackTrace();}
refresh();
}//GEN-LAST:event_jComboBox1ActionPerformed
// 變量聲明 - 不進行修改//GEN-BEGIN:variables
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton3;
private javax.swing.JComboBox jComboBox1;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JScrollPane jScrollPane2;
private javax.swing.JTable jTable1;
private javax.swing.JTextArea jTextArea1;
private javax.swing.JTextField jTextField1;
private javax.swing.JTextField jTextField2;
// 變量聲明結束//GEN-END:variables
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -