?? frametable.java~9~
字號:
package prj12;
import java.awt.BorderLayout;
import java.awt.Dimension;
import javax.swing.*;
import javax.swing.JPanel;
import javax.swing.JTable;
import javax.swing.table.JTableHeader;
import java.awt.Color;
import javax.swing.table.DefaultTableModel;
import db.DbConnectio;
import java.util.*;
import java.awt.event.MouseEvent;
import java.awt.event.MouseAdapter;
public class FrameTable extends JFrame {
JPanel contentPane;
DbConnectio db = new DbConnectio();
//表頭
// String [] name={"學號","姓名","成績"};
//數據
// Object [][] data={{new Integer(1),"a",new Integer(60)},{new Integer(2),"b",new Integer(70)},{new Integer(3),"c",new Integer(80)}};
/// DefaultTableModel dt=new DefaultTableModel()
BorderLayout borderLayout1 = new BorderLayout();
JTable jTable1 = new JTable();
JTableHeader jTableHeader1 = jTable1.getTableHeader();
public FrameTable() {
try {
setDefaultCloseOperation(EXIT_ON_CLOSE);
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
/**
* Component initialization.
*
* @throws java.lang.Exception
*/
private void jbInit() throws Exception {
contentPane = (JPanel) getContentPane();
contentPane.setLayout(borderLayout1);
setSize(new Dimension(400, 300));
setTitle("表格");
DbConnectio db = new DbConnectio();
Vector vdata = db.getData();
Vector vname = db.getColumnNames();
//創建一個數據模式類對象
DefaultTableModel dt = new DefaultTableModel(vdata, vname);
jTable1.setCellSelectionEnabled(true);
//為表格設置數據模式方式
jTable1.setModel(dt);
jTable1.addMouseListener(new FrameTable_jTable1_mouseAdapter(this));
jTableHeader1.setForeground(Color.red);
jTable1.setGridColor(Color.black);
contentPane.add(jTable1, java.awt.BorderLayout.CENTER);
contentPane.add(jTableHeader1, java.awt.BorderLayout.NORTH);
}
public void jTable1_mouseClicked(MouseEvent e) {
DbConnectio db = new DbConnectio();
//獲取行號
int row = jTable1.getSelectedRow();
//獲取列號
int col = jTable1.getSelectedColumn();
String s = (String) jTable1.getValueAt(row, col);
int n = Integer.parseInt(s);
int nn = JOptionPane.showConfirmDialog(this, "是否刪除", "刪除",
JOptionPane.YES_NO_OPTION);
if (nn == 0) {
int ss = db.delStu(n);
if (ss == 1) {
JOptionPane.showMessageDialog(this, "已成功刪除");
Vector vdata = db.getData();
Vector vname = db.getColumnNames();
//創建一個數據模式類對象
DefaultTableModel dt = new DefaultTableModel(vdata, vname);
// jTable1.setCellSelectionEnabled(true);
//為表格設置數據模式方式
jTable1.setModel(dt);
}
}
//JOptionPane.showMessageDialog(this,s);
}
}
class FrameTable_jTable1_mouseAdapter extends MouseAdapter {
private FrameTable adaptee;
FrameTable_jTable1_mouseAdapter(FrameTable adaptee) {
this.adaptee = adaptee;
}
public void mouseClicked(MouseEvent e) {
adaptee.jTable1_mouseClicked(e);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -