📄 servertable.java
字号:
package cstest;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.*;
import java.awt.GridLayout;
import java.awt.BorderLayout;
import javax.swing.event.*;
import java.io.Serializable;
import java.util.Date;
import java.awt.color.*;
import java.io.File;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.*;
class DataModel extends AbstractTableModel {
Object[][] data = {
{
"one", "two", "three", "four"}
, {
"five", "six", "seven", "eight"}
, {
"nine", "ten", "eleven", "twelve"}
,
};
// Prints data when table changes:
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 void
setValueAt(Object val, int row, int col) {
data[row][col] = val;
// Indicate the change has happened:
fireTableDataChanged();
}
public boolean
isCellEditable(int row, int col) {
return true;
}
};
public class ServerTable extends JPanel {
static UserInfoList uil=null;
private int n = 0;
public ServerTable()
{
try {
if ( (new File("User.us")).exists()) {
//得到配置文件输入流
ObjectInputStream input =
new ObjectInputStream(new FileInputStream(
"User.us"));
//读取用户节点信息
uil = (UserInfoList) input.readObject();
input.close();
}
else
{
uil = new UserInfoList();
Node Ken = new Node("ken", "ken", "ken");
Ken.setFile();
Node Ryu = new Node("ryu", "ryu", "ryu");
Ryu.setFile();
Node Admin = new Node("admin", "admin", "admin");
Ken.setFile();
uil.add(Ken);
uil.add(Ryu);
uil.add(Admin);
ObjectOutputStream out =
new ObjectOutputStream(new FileOutputStream(
"User.us"));
//保存设置
out.writeObject(uil);
//关闭配置文件输出流
out.close();
}
}
catch (Exception ioe) {
ioe.printStackTrace();
}
n = uil.getCount();
String[] columnNames = {
"User Name",
"Account",
"Passowrd"
};
Object[][] data = new Object[100][3];
for (int i = 0; i < n; i++) {
data[i][0] = uil.find(i).getUserName();
data[i][1] = uil.find(i).getAccount();
data[i][2] = uil.find(i).getPassword();
}
setLayout(new BorderLayout());
JTable table = new JTable(data, columnNames);
JScrollPane scrollpane =
JTable.createScrollPaneForTable(table);
add(scrollpane, BorderLayout.CENTER);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -