【问题标题】:AbstractTableModel inheritance set column header text?AbstractTableModel 继承设置列标题文本?
【发布时间】:2015-09-26 04:13:46
【问题描述】:

我有MyTableModel类范围AbstractTableModel,如何在MyTableModel类本身中添加列名和设置列标题文本,这样我每次使用模型时都不必设置主题?

【问题讨论】:

  • I have MyTableModel class extent AbstractTableModel, - 为什么? DefaultTableModel 有什么问题? can I add the columns name and header text in the MyTableModel class itself,是的。
  • @camickr,我需要使用 AbstractTableModel 来帮助使用我的实体 ArrayList 创建我的表模型,这是一种常见的方式。我想问是否有办法设置 coumns 标题文本,如果有,我该怎么做。

标签: java swing abstracttablemodel columnheader


【解决方案1】:

我需要使用 AbstractTableModel 来帮助使用我的实体 ArrayList 创建表模型

查看Row Table Model。它提供了一个完整的示例,说明如何对 Person 对象执行此操作。

它还展示了如何创建通用实体模型,这样您就不必为每个新实体实现 TableModel 的所有方法。

【讨论】:

    【解决方案2】:

    参考以下示例并以正确的方式实现您的代码。

    public class MyTableModel extends AbstractTableModel {
    
        private static final String[] COLUMN_NAMES = {"Student", "Subject", "Marks"};
        private static final Class[] COLUMN_CLASSES = {String.class, String.class, Integer.class};
        private static final Object[][] TABLE_DATA = {
            {"Channa", "Programming", 99},
            {"John", "English", 85},
            {"Samantha", "Scence", 60},
            {"Kumar", "Maths", 90}
        };
    
        //the column header
        @Override
        public String getColumnName(int column) {
            return COLUMN_NAMES[column];
        }
    
        //if you want to change the columns class 
        @Override
        public Class<?> getColumnClass(int columnIndex) {
            return COLUMN_CLASSES[columnIndex];
        }
    
        @Override
        public int getRowCount() {
            return TABLE_DATA.length;
        }
    
        @Override
        public int getColumnCount() {
            return COLUMN_NAMES.length;
        }
    
        @Override
        public Object getValueAt(int rowIndex, int columnIndex) {
            return TABLE_DATA[rowIndex][columnIndex];
        }
    }
    

    这是我的测试截图

    【讨论】:

    • I need to use AbstractTableModel to help create my table model with my entity ArrayList, - 这对“ArrayList 中的实体”有何帮助?
    猜你喜欢
    • 2019-12-01
    • 1970-01-01
    • 2014-07-17
    • 1970-01-01
    • 1970-01-01
    • 2013-03-10
    • 1970-01-01
    • 2016-12-14
    • 2010-09-14
    相关资源
    最近更新 更多