⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cachetablemodel.java

📁 自行开发的高缓存table
💻 JAVA
字号:
// Decompiled by DJ v2.9.9.60 Copyright 2000 Atanas Neshkov  Date: 2004-2-20 9:14:23
// Home Page : http://members.fortunecity.com/neshkov/dj.html  - Check often for new version!
// Decompiler options: packimports(3) 
// Source File Name:   CacheTableModel.java

package utility.CacheTableEX;

import java.util.Vector;
import javax.swing.event.TableModelEvent;
import javax.swing.event.TableModelListener;
import javax.swing.table.TableModel;
import sbsnms.asn.IDList;
import utility.Trace;

// Referenced classes of package utility.CacheTableEX:
//            CacheTableEx, CacheTableScrollPane

public class CacheTableModel
    implements TableModel
{

    CacheTableModel()
    {
        pagedTable = null;
        lowRowIndex = 0;
        upRowIndex = 100;
        lowestLine = 0;
        tableModelListeners = new Vector();
    }

    public void setPagedTable(CacheTableEx cachetableex)
    {
        pagedTable = cachetableex;
    }

    protected int getPageSize()
    {
        return 100;
    }

    private int getMaxPage()
    {
        int i = getRowCount() / getPageSize();
        if(getRowCount() - i * getPageSize() == 0)
            return i;
        else
            return i + 1;
    }

    public void setValueAt(Object obj, int i, int j)
    {
    }

    public boolean isCellEditable(int i, int j)
    {
        return false;
    }

    public Object getValueAt(int i, int j)
    {
        if(i <= upRowIndex && i >= lowRowIndex)
            return getValueAtEx(i, j);
        else
            return null;
    }

    public Object getValueAtEx(int i, int j)
    {
        return "Override CacheTableModel.getValueAtEx  " + i;
    }

    public int getColumnCount()
    {
        return 1;
    }

    public int getRowCount()
    {
        return DEFAULT_ROW_COUNT;
    }

    public Class getColumnClass(int i)
    {
        return java.lang.String.class;
    }

    public void addTableModelListener(TableModelListener tablemodellistener)
    {
        tableModelListeners.add(tablemodellistener);
    }

    public void removeTableModelListener(TableModelListener tablemodellistener)
    {
        tableModelListeners.remove(tablemodellistener);
    }

    public void fireTableChanged()
    {
        TableModelEvent tablemodelevent = new TableModelEvent(this, 0, getRowCount() - 1, -1);
        fireTableChanged(tablemodelevent);
    }

    public void fireTableChanged(TableModelEvent tablemodelevent)
    {
        for(int i = 0; i < tableModelListeners.size(); i++)
            ((TableModelListener)tableModelListeners.elementAt(i)).tableChanged(tablemodelevent);

    }

    public String getColumnName(int i)
    {
        return "success";
    }

    public void updateData(int i)
    {
        lowestLine = i;
        int j = getRowCount();
        int k = i / getPageSize();
        int l = getMaxPage();
        lowRowIndex = Math.max(k - 1, 0) * getPageSize();
        upRowIndex = Math.min(Math.min(k + 2, l) * getPageSize() - 1, j - 1);
        Trace.print("CacheTableModel", "updateData", "rowCount = " + j + "--------");
        Trace.print("CacheTableModel", "updateData", "currentPage = " + k + "--------");
        Trace.print("CacheTableModel", "updateData", "maxPage = " + l + "--------");
        Trace.print("CacheTableModel", "updateData", "lowRowIndex = " + lowRowIndex + "--------");
        Trace.print("CacheTableModel", "updateData", "upRowIndex = " + upRowIndex + "--------");
        int i1 = getRowCount();
        if(lowRowIndex != updateRows(lowRowIndex, upRowIndex) && 0 != lowRowIndex)
        {
            pagedTable.getTableScrollPane().srollToPosition(0);
            fireTableChanged();
        }
    }

    public int updateRows(int i, int j)
    {
        return i;
    }

    public void setIDList(IDList idlist)
    {
    }

    public IDList getAllId()
    {
        return null;
    }

    CacheTableEx pagedTable;
    int lowRowIndex;
    int upRowIndex;
    int lowestLine;
    public static final int DEFAULT_PAGESIZE = 100;
    public static int DEFAULT_ROW_COUNT = 3000;
    public static final int DEFAULT_COLUNM_COUNT = 1;
    public static final int DATA_NOT_AVAILABLE = -1;
    private Vector tableModelListeners;

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -