Guest User

Help me with Java

a guest
Sep 8th, 2015
142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5 3.94 KB | None | 0 0
  1. package Model;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.List;
  5. import javax.swing.table.AbstractTableModel;
  6.  
  7. public class TableModel extends AbstractTableModel {
  8.  
  9.     private ArrayList<String> titles;
  10.     private final int columnNumber = titles.size();
  11.  
  12.     private ArrayList<Object> objectList;
  13.  
  14.  
  15.  
  16.  
  17.     public TableModel(ArrayList<Object> objectList, ArrayList<String> titles) {
  18.         this.objectList=objectList;
  19.         this.titles=titles;
  20.     }
  21.  
  22.  
  23.     public Class getColumnClass(int column) {
  24.         return getValueAt(0, column).getClass();
  25.     }
  26.  
  27.     public int getListSize() {
  28.         return this.objectList.size();
  29.     }
  30.  
  31.     public String getColumnName(int col) {
  32.         return titles.get(col);
  33.     }
  34.  
  35.     @Override
  36.     public int getRowCount() {
  37.         return this.objectList.size();
  38.     }
  39.  
  40.     @Override
  41.     public int getColumnCount() {
  42.         return columnNumber;
  43.     }
  44.  
  45.     @Override
  46.     public java.lang.Object getValueAt(int rowIndex, int columnIndex) {
  47.         Object object= objectList.get(rowIndex);
  48.         if(columnIndex<titles.size()){
  49.             return object.getData(columnIndex);
  50.         }
  51.         return "";
  52.  
  53.     }
  54. }
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61. package Model;
  62.  
  63.  
  64. import org.jdom2.Attribute;
  65. import org.jdom2.Document;
  66. import org.jdom2.Element;
  67. import org.jdom2.input.SAXBuilder;
  68.  
  69. import javax.swing.*;
  70. import java.awt.*;
  71. import java.io.FileReader;
  72. import java.util.ArrayList;
  73.  
  74. public class LoadTable {
  75.  
  76.     public ArrayList <Object> objectList = new ArrayList<Object>();
  77.     public ArrayList<String> titles = new ArrayList<String>();
  78.  
  79.  
  80.     public LoadTable(){
  81.  
  82.         Object object;
  83.  
  84.         FileDialog loadDia = new FileDialog(new JFrame(), "Choose a file",
  85.                 FileDialog.LOAD);
  86.         loadDia.setDirectory("C:\\Users\\AskeRik\\Desktop\\");
  87.         loadDia.setVisible(true);
  88.         String filename = loadDia.getFile();
  89.         if (filename == null) {
  90.             JOptionPane.showMessageDialog(null, "error");
  91.         } else {
  92.             filename = loadDia.getDirectory() + filename;
  93.             try {
  94.                 SAXBuilder parser = new SAXBuilder();
  95.                 FileReader fr = new FileReader(filename);
  96.                 Document rDoc = parser.build(fr);
  97.  
  98.                 ArrayList <String> data = new ArrayList<String>();
  99.                 java.util.List<Element> temp = rDoc.getRootElement().getChildren();
  100.                 java.util.List<Attribute> names = temp.get(0).getAttributes();
  101.                 for (int i = 0; i< names.size(); i++){
  102.                     titles.add(names.get(i).getName());
  103.  
  104.                 }
  105.  
  106.                 for (int i = 0; i<titles.size(); i++){
  107.                     //System.out.println(titles.get(i));
  108.                 }
  109.  
  110.                 for (int mark = 0; mark < temp.size(); mark++) {
  111.                     java.util.List<Attribute> atrs = temp.get(mark).getAttributes();
  112.                     for (int number = 0; number <atrs.size(); number++) {
  113.                         data.add(atrs.get(number).getValue());
  114.                         object = new Object(data);
  115.                         objectList.add(object);
  116.                         data.clear();
  117.  
  118.                     }
  119.  
  120.                 }
  121.  
  122.  
  123.                 JFrame mainFrame = new JFrame("table");
  124.                 mainFrame.setLayout(new FlowLayout());
  125.                 mainFrame.setSize(600,400);
  126.                 mainFrame.setVisible(true);
  127.                 mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  128.                 TableModel tableModel = new TableModel(objectList, titles);
  129.                 JTable table = new JTable(tableModel);
  130.                 JScrollPane jScrollPane = new JScrollPane(table);
  131.                 table.setPreferredScrollableViewportSize(new Dimension(500, 300));
  132.                 mainFrame.getContentPane().add(jScrollPane);
  133.  
  134.  
  135.             } catch (Exception ex) {
  136.                 System.out.println(ex.getMessage());
  137.             }
  138.         }
  139.     }
  140. }
Advertisement
Add Comment
Please, Sign In to add comment