现在我设法将文件中的对象放入ArrayList
,我必须将它们显示为JTable
。
这是我ArrayList
Lieu<Double, String>(45.573715, -73.900295, "p1");
Lieu<Double, String>(45.573882, -73.899748, "p2");
Lieu<Double, String>(45.574438, -73.900099, "p3");
在Lieu
课程中,我有方法getX()
和getY()
但我无法弄清楚如何在JTable
中展示它们。
Longitude Latitude
45.573715 -73.900295
45.573882 -73.899748
45.574438 -73.900099
这是我的开始:
public class MonModel extends AbstractTableModel{
@Override
public int getColumnCount() {
return 2;
}
@Override
public int getRowCount() {
return l.size();//l is the arraylist that contains the 3 elements
}
@Override
public Object getValueAt(int rowIndex, int columnIndex) {
if(columnIndex==0){
return l.get(rowIndex).getX();
}
else if(columnIndex==1){
return l.get(rowIndex).getY();
}
return null;
}
答案 0 :(得分:1)
使用TableModel
创建JTable
并将其添加到JFrame
。另请考虑覆盖getColumnName()
,如图所示here。另请参阅How to Use Tables。
MonModel model = new MonModel();
JTable table = new JTable(model);
JFrame f = new JFrame();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.add(new JScrollPane(table), BorderLayout.CENTER);
f.pack();
f.setLocationByPlatform(true);
f.setVisible(true);
答案 1 :(得分:1)
使用TableModel
在JTable
中显示数据。例如:
在UI类中,将表模型设置为表。
JTable table = new JTable(new MonModel());
表模型类
class MonModel extends AbstractTableModel {
private List<LatNLon> l;
private String[] columnNames = {"Longitude", "Latitude"};
public MonModel() {
l = new ArrayList<LatNLon>();
l.add(new LatNLon("45.573715", "-73.900295"));
l.add(new LatNLon("45.573715", "-73.900295"));
l.add(new LatNLon("45.573715", "-73.900295"));
}
@Override
public String getColumnName(int column) {
return columnNames[column];
}
public int getColumnCount() {
return 2;
}
public int getRowCount() {
return l.size();
}
public Object getValueAt(int rowIndex, int columnIndex) {
if(columnIndex==0){
return l.get(rowIndex).getX();
}
else if(columnIndex==1){
return l.get(rowIndex).getY();
}
return null;
}
}
纬度和经度等级。
class LatNLon {
private String x;
private String y;
public LatNLon(String x, String y) {
this.x = x;
this.y = y;
}
// Code: For Getters and Setters.
}
另请阅读How to use Tables。