Posted on 2007-06-15 13:42
停留的風 閱讀(5005)
評論(0) 編輯 收藏
table 的屬性設置
private JTable getPreTable() {
if (preTable == null) {
preTable = new JTable();
Object[][] tabledata={};
DefaultTableModel model=new DefaultTableModel(tabledata,colName){
public boolean isCellEditable(int row, int column)
{
return false;
};
};
preTable = new JTable(model);
preTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
preTable.addMouseListener(new MouseAdapter(){
public void mouseClicked(MouseEvent e) {
if(e.getClickCount()==2){//點擊幾次,這里是雙擊事件
tableChanged();
}
}
});
}
return preTable;
}
雙擊單行的事件:
public void tableChanged()
{
int row=preTable.getSelectedRow();
String preId=preTable.getValueAt(row,0).toString(); //得到所在行的第一個列的值,作為下面事件傳遞的參數
MedBean mb=new MedBean();//數據操作類中調用
String id=mb.getMedId(preId);
TableModel tm=getMedTable().getModel();//另一個表
DefaultTableModel dtm=(DefaultTableModel)tm;
ArrayList<Medicine>list=mb.SelPreMed(id);
int rowcount=dtm.getRowCount();
for(int i=rowcount-1;i>=0;i--){//刪除以前數據表中的數據
dtm.removeRow(i);
}
for(Medicine m:list){
Object[] object={m.getMedicineId(),m.getMedicineName(),m.getQuantity(),m.getUnit(),m.getSideEffect()};
dtm.addRow(object);
}
}