java - 读取文件并将数据从文件发送到 JTable

标签 java swing file-io jtable tablemodel

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 发送到行。任何人所持有的任何东西都将不胜感激。

最佳答案

您需要做的是实现您自己的TableModel。本教程关于"How to Use Tables"将有助于理解表格在 Swing 中的工作原理。

基本上,您需要做的是创建一个扩展 AbstractTableModel 的类并至少提供以下三种方法的实现:

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

您可以使用您的模型,以便它可以将其数据保存在数组、 vector 或 HashMap 中,或者它可以从外部源获取数据,例如读取文件并从中获取数据。

关于java - 读取文件并将数据从文件发送到 JTable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13228933/

相关文章:

java - 如何设置 JTableBinding 中的列大小?

php - 将 URL 文件名替换为新名称

java - 无法逐行读取txt文件

c - 在 C 中使用 FILE 变量的地址和 FILE * 有什么区别?

java - 如果未选择,则在 UI 中显示带有默认值的枚举值

java - 从不同的项目访问属性文件

java - 如何触发 JSlider 更改监听器?

java - 如何更新不断变化的 GUI 而不会因更新而闪烁(图形 g)?

java.lang.IllegalStateException : android. 媒体.MediaPlayer.stop

java - 导出 JasperReports 查询结果