【发布时间】:2023-03-10 13:56:01
【问题描述】:
我正在做一个项目,我必须在一个模块中显示数据网格中的数据(为此我使用 JTable)。问题是,当我在 JTable 中插入数据时,它会填充到表的底部,我想在表的顶部显示新行。请指导我完成这项任务,任何帮助将不胜感激。我正在使用 NetBeans 进行开发。
这是我填充数据的代码:
public void run() {
try {
FileWriter out = new FileWriter("test.txt");
BufferedWriter bufWriter = new BufferedWriter(out);
int nb = input.readInt();
System.out.println("Read Length"+ nb);
byte[] digit = new byte[nb];
System.out.println("Writing.......");
for(int i = 0; i < nb; i++)
digit[i] = input.readByte();
String st = new String(digit);
bufWriter.append(st);
bufWriter.close();
out.close();
System.out.println ("receive from : " +
clientSocket.getInetAddress() + ":" +
clientSocket.getPort() + " message - " + st);
DefaultTableModel table = (DefaultTableModel)_table.getModel();
File file = new File("test.txt");
Scanner f = new Scanner(file);
String line = null;
String[] str = null;
while(f.hasNext()){
line = f.nextLine().replace('|', ',');
str = line.split(",");
table.addRow(str);
_table.setBackground(Color.red);
}
output.writeInt(st.length());
output.writeBytes(st);
}
catch(EOFException e) {
System.out.println("EOF:"+e.getMessage()); }
catch(IOException e) {
System.out.println("IO:"+e.getMessage());}
finally {
try {
clientSocket.close();
}
catch (IOException e){/*close failed*/}
}
}
提前致谢。
【问题讨论】:
-
您不妨考虑使用自己的
TableModel,而不是使用默认的。 -
好的,让我看看教程。
标签: java swing netbeans jtable netbeans-8