次のコードがあります。
class Files {
private static String files;
private static String duration;
private static String status;
public Files(String files, String duration, String status) {
this.files = files;
this.duration = duration;
this.status = status;
}
public static String getfiles() {
return files;
}
public static String getduration() {
return duration;
}
public static String getstatus() {
return status;
}
}
Map<Files, String> hmap = new HashMap<Files,String>();
private void AddFiles(String addfile,String addurr,String addstatus, String addpath){
Files f = new Files(addfile, addurr, addstatus);
hmap.put(f, addpath);
}
final JTable table = new JTable();
table.setBounds(26, 27, 664, 274);
table.setModel(new MyTableModel());
だから私は新しいテーブルを作成し、「getValueAt」をオーバーライドしています。
class MyTableModel extends AbstractTableModel {
@Override
public int getColumnCount() {
// TODO Auto-generated method stub
return 0;
}
@Override
public int getRowCount() {
// TODO Auto-generated method stub
return 0;
}
@Override
public Object getValueAt(int rowIndex, int columnIndex) {
switch (columnIndex) {
case 0:
return Files.getfiles();
case 1:
return Files.getduration();
case 2:
return Files.getstatus();
default:
throw new IndexOutOfBoundsException();
}
}
}
それでも、HashMap のクラス「ファイル」から変数を JTable にロードできません。誰が私が間違っているのか教えてもらえますか? 私は基本的に3日間立ち往生しており、本当に助けていただければ幸いです.