📄 jtabledemo.java
字号:
package chapter6.component;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;
import javax.swing.event.*;
public class JTableDemo extends JFrame {
Object[][] data = { {"01", "David", "123456", "902"}, {"02", "James",
"234567", "301"}, {"03", "Jim", "345678", "505"},
};
String[] columnName = {"ID", "NAME", "TEL", "ADDRESS"};
public JTableDemo() {
Container contentPane = this.getContentPane();
JPanel jPanel1 = new JPanel(new BorderLayout());
JTable jTable1 = new JTable(new DataModel());
JScrollPane scrollpane = new JScrollPane(jTable1);
jPanel1.add(scrollpane, BorderLayout.CENTER);
contentPane.add(jPanel1);
this.setTitle("JTableDemo");
this.setSize(400, 200);
this.setLocation(400, 400);
this.setVisible(true);
}
class DataModel extends AbstractTableModel {
class TML implements TableModelListener {
public void tableChanged(TableModelEvent e) {
for (int i = 0; i < data.length; i++) {
for (int j = 0; j < data[0].length; j++) {
System.out.print(data[i][j] + " ");
}
System.out.println();
}
}
}
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 String getColumnName(int col) {
return columnName[col];
}
public void setValueAt(Object val, int row, int col) {
data[row][col] = val;
fireTableDataChanged();
}
public boolean isCellEditable(int row, int col) {
return true;
}
};
public static void main(String[] args) {
JTableDemo test = new JTableDemo();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -