?? tabledemo.java~15~
字號(hào):
/**
* <p>Title: JAVA表格使用示例</p>
* <p>Description: 第五章例子</p>
* <p>Copyright: Copyright (c) 2006</p>
* <p>Company: </p>
* @author 蘇年樂(lè)
* @version 1.0
*/
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.table.*;
import javax.swing.event.*;
public class TableDemo
extends JFrame {
JTextArea txt = new JTextArea(4, 20);
// TableModel控制所有數(shù)據(jù)
class DataModel extends AbstractTableModel {
Object[][] data = {
{"one", "two", "three", "four"},
{"five", "six", "seven", "eight"} ,
{"nine", "ten", "eleven", "twelve"},
};
//當(dāng)表格改變時(shí)輸出表格數(shù)據(jù)
class TML implements TableModelListener {
public void tableChanged(TableModelEvent e) {
txt.setText(""); // Clear it
for (int i = 0; i < data.length; i++) {
for (int j = 0; j < data[0].length; j++)
txt.append(data[i][j] + " ");
txt.append("\n");
}
}
}
public DataModel() {
addTableModelListener(new TML());
}
public int getColumnCount() {
return data[0].length;
}
public int getRowCount() {
return data.length;
}
public Object getValueAt(int row, int col) {
return data[row][col];
}
public void
setValueAt(Object val, int row, int col) {
data[row][col] = val;
//暗示變化已經(jīng)發(fā)生
fireTableDataChanged();
}
public boolean
isCellEditable(int row, int col) {
return true;
}
}//以上是DataModel的函數(shù)
public TableDemo() {
Container cp = getContentPane();
JTable table = new JTable(new DataModel());
cp.add(new JScrollPane(table));
cp.add(BorderLayout.SOUTH, txt);
this.setSize(350,200);
this.show();
}
public static void main(String[] args) {
TableDemo app=new TableDemo();
app.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
} ///:~
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -