有没有办法读取 JScrollPane 的内容?
我实现的是一个 DefaultTableModel
,它具有使用 addColumn()
方法添加的三列
。我使用此 DefaultTableModel
作为 JTable
声明和实现的参数。此 JTable
稍后用作 JScrollPane
的声明和实现的参数。在代码的整个执行过程中,我使用 addRow()
方法将 nows 添加到 DefaultTableModel
。我手头的目标是读取添加的行的内容。
有人有什么建议吗?我们将不胜感激!
JTabbedPane tabbedPane = new JTabbedPane();
DefaultTableModel model = new DefaultTableModel();
model.addColumn("Column1");
model.addColumn("Column2");
model.addColumn("Column3");
JTable testResults = new JTable(model) {
@Override
public boolean isCellEditable(int row, int column) {
return false;
}
};
JScrollPane resultTab = new JScrollPane(testResults);
resultTab.setName("Tab1");
resultTab.setVisible(true);
Thread thread1 = new Thread() {
public void run() {
if(tabbedPane.getSelectedComponent().getName().compareTo("Tab1") == 0) {
model.addRow(new Object[]{"content1", "content2", "content3"});
model.addRow(new Object[]{"content4", "content5", "content6"});
...
...
...
model.addRow(new Object[]{"this", "will", "continue"});
}
else {
model.addRow(new Object[]{"content1", "content2", "content3"});
model.addRow(new Object[]{"content4", "content5", "content6"});
}
};
thread1.start();
我想读取数据“content1”、“content2”、“content3”、“content4”、“content5”、“content6”等。省略号表示在整个过程中添加的行数未定义源代码。
最佳答案
您想从 DefaultTableModel
而不是 JScrollPane
读取数据 - 它只是一个 Swing 容器。
getDataVector()
将在此处为您提供帮助。它返回表示表模型中数据的 vector 的 vector 。
关于java - 读取 JScrollPane 的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11582062/