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

📄 pulsetablemodel.java

📁 通讯采集软件
💻 JAVA
字号:
/*
 * PulseTableModel.java
 *
 * Created on 2003年9月5日, 上午9:50
 */

package collector.gui.model;

import java.util.*;

import javax.swing.table.*;

import collector.common.*;
import pbs.service.defineobject.*;
import pbs.service.function.*;
import pbs.service.struct.*;
import pbs.service.vo.*;

/**
 *
 * @author  dljf
 */
public class PulseTableModel
    extends AbstractTableModel {
  String[] columnNames = new String[5];
  Object[][] data = new Object[5][5];
  ArrayList m_pulselist = new ArrayList();
  pulseDefine pDefine = new pulseDefine();
  pulse Mypulse = new pulse();
  public static final int SPAREFIELD = 17;

  /** Creates a new instance of PulseTableModel */
  public PulseTableModel(ArrayList m_pPulselist) {
    super();
    this.m_pulselist = m_pPulselist;
    //columnNames = new String[pDefine.m_field_num - SPAREFIELD];
    columnNames = new String[3];
    //data = new Object[m_pulselist.size()][pDefine.m_field_num - SPAREFIELD];
    data = new Object[m_pulselist.size()][3];
    FieldValue fv = new FieldValue();
    Object[] m_Objects = m_pulselist.toArray();
    getPulseFieldName m_gPFN = new getPulseFieldName();

    columnNames[0] = m_gPFN.getChName(pDefine.PULSE_NAME_NO);
    columnNames[1] = m_gPFN.getChName(pDefine.PULSE_TYPE_NO);
    columnNames[2] = m_gPFN.getChName(pDefine.PULSE_NO_NO);

    for (int i = 0; i < m_Objects.length; i++) {
      pulse m_pulse = (pulse) m_Objects[i];
      this.setPulse( (pulse) m_Objects[i]);

      data[i][0] = this.getFieldValue(pDefine.PULSE_NAME_NO);
      data[i][1] = this.getChTypeName(this.getFieldValue(pDefine.PULSE_TYPE_NO));
      data[i][2] = this.getFieldValue(pDefine.PULSE_NO_NO);

    }
  }

  private String getChTypeName(Object m_pObject) {
    if (! (m_pObject instanceof Integer)) {
      return " ";
    }
    int TypeNo = ( (Integer) m_pObject).intValue();
    String TypeName = new String();
    switch (TypeNo) {
      case CollectorDefine.RECKWH:
        TypeName = "正向有功";
        break;
      case CollectorDefine.DELKWH:
        TypeName = "反向有功";
        break;
      case CollectorDefine.RECKVARH:
        TypeName = "正向无功";
        break;
      case CollectorDefine.DELKVARH:
        TypeName = "反向无功";
        break;
      default:
        break;
    }
    return TypeName;
  }

  private Object getFieldValue(int no) {
    pulse m_pulse = this.getPulse();
    //FieldValue fv = m_pulse.getFieldValueByNo( (long) (no));
    FieldValue fv = m_pulse.getFieldValueByNo( (long) (no + 1));
    Object m_Object = null;
    if (fv.m_field_type == Constant.JAVA_TYPE_INT) {
      m_Object = new Integer(fv.m_intValue);
    }
    else if (fv.m_field_type == Constant.JAVA_TYPE_DOUBLE) {
      m_Object = new Double(fv.m_dblValue);
    }
    else if (fv.m_field_type == Constant.JAVA_TYPE_LONG) {
      m_Object = new Long(fv.m_lValue);
    }
    else {
      m_Object = fv.m_strValue;
    }
    return m_Object;
  }

  private void setPulse(pulse m_pPulse) {
    this.Mypulse = m_pPulse;
  }

  private pulse getPulse() {
    return this.Mypulse;
  }

  public int getColumnCount() {
    return columnNames.length;
  }

  public int getRowCount() {
    return data.length;
  }

  public String getColumnName(int col) {
    return columnNames[col];
  }

  public Object getValueAt(int row, int col) {
    return data[row][col];
  }

  public boolean isCellEditable(int row, int col) {
    return false;
  }

}

⌨️ 快捷键说明

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