2012-11-05 5 views
0
public void showTotalSummary() 
     { 
      JFrame totalSummary = new JFrame("Total Leave Credit Summary"); 
      totalSummary.setSize(970, 523); 
      totalSummary.setResizable(false); 
      totalSummary.setLocationRelativeTo(null); 
      totalSummary.setVisible(true);    

      panelTotalSummary = new JPanel();    
      panelTotalSummary.setBorder ((Border) new TitledBorder (new EtchedBorder(), "Display Area")); 
      totalSummary.add(panelTotalSummary); 

      String[] headings = {"Employee No.", "Employee Names", "Vacation Leave", "Tardiness", "Sick Leave", "Nonattendances", "Total Leave Earned "};     

      String [][] data = {{"01", "Adlawan","10.50","2.50","20", "4", "30.50"}, 
           {"02","Angeles","20.10","5.90","25","6","45.10"}, 
           {"03","Benenoso","30.70","7.60","34","8","64.70"}, 
           {"04","Bermas","20","4.10","25","3","45"}}; 

      JTable totalSummaryTable = new JTable(data, headings);    
      totalSummaryTable.getTableHeader().setFont(new Font("Tahoma" , Font.BOLD, 12)); 
      Font f = new Font("Arial", Font.ITALIC, 13);      
      totalSummaryTable.setFont(f);   
      totalSummaryTable.setGridColor(Color.BLUE); 
      totalSummaryTable.setPreferredScrollableViewportSize(new Dimension(900, 400)); 
      totalSummaryTable.setFillsViewportHeight(true); 

      JScrollPane jcp = new JScrollPane(totalSummaryTable);    
      jcp.setVerticalScrollBarPolicy (ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS); 
      panelTotalSummary.add(jcp); 

     } 

이러한 코드를 사용하여 데이터를 JTable에 게시 할 수있었습니다. 내 질문은 어떻게 파일에서 데이터를 가져 와서 JTable에서 행에 데이터를 읽을 수있을 것입니다? 파일을 읽고 JTextField로 데이터를 보내는 방법을 알고 있습니다. 어떻게 동일한 프로세스를 수행 할 것인가 JTextField에 데이터를 보내는 대신 파일의 데이터를 JTabel의 행에 보내길 원합니다. 아무 에게서나 붙들어 진 무엇이든은 매우 평가 될 것입니다.파일을 읽고 파일에서 데이터를 JTable로 보내기

답변

3

당신이해야 할 일은 자신의 TableModel을 구현하는 것입니다. "How to Use Tables"에 대한이 자습서는 Swing에서 테이블이 작동하는 방식을 이해하는 데 도움이됩니다. 그것의 데이터를 저장할 수 있도록

public int getRowCount(); 
public int getColumnCount(); 
public Object getValueAt(int row, int column); 

당신은 당신의 모델을 사용할 수 있습니다

기본적으로, 당신이해야 할 것은 적어도 다음 세 가지 방법의 구현을 AbstractTableModel를 확장하고 제공 할 클래스를 만드는 것입니다 배열, 벡터 또는 해시 맵에 저장하거나 파일을 읽거나 데이터를 가져 오는 것과 같이 외부 소스에서 데이터를 가져올 수 있습니다.

+0

팁 주셔서 감사합니다. –

+0

모델을 사용하는 방법에 대한 샘플 코드를 제공하여 내가 읽은 파일의 데이터를 표시 할 수 있습니까? –

+0

@AlexMikki : 답변과 관련된 링크를 게시했습니다. 링크를 방문하여 AbstractTableModel을 볼 수있는 기회를 얻었습니까? 나는 당신의 코드에 그 개념을 맞추는 것이 어려울 것이라고 생각하지 않는다. – Sujay

관련 문제