All pastes #475447 Raw Edit

Anonymous

public java v1 · immutable
·published 2007-05-07 13:18 UTC
rendered paste body
package met2007;import java.util.ArrayList;import java.text.*;import javax.swing.table.*;/** * TabellModell.java * Utvidelse av tabellmodell. * * @author  Øyvind Buer(oyvind@gmail.com), Tore Minsaas(toreminsaas@hotmail.com), Israr Khan(v-iskhan@microsoft.com) * @version 1.00 - Sist oppdatert: 05.05.07 *  */class Tabellmodell extends AbstractTableModel{	private Register reg;	private String[] kolonneNavn = {"Fylke", "Sted", "Snitt maxtemp", "Snitt mintemp", "Nedbør" };	private ArrayList<Fylke> tempFylke = new ArrayList<Fylke>();	private ArrayList<Sted> tempSted;	private År tempÅr;	private int år;	private int antallRader;	private Object[][] celler;	private DecimalFormat df;	   	public Tabellmodell()	{		celler = new Object[1][1];		celler[0][0] = new String("");	}		public Tabellmodell(Register r, int å)	{		reg = r;		år = å;		opprettCeller();	}		//Metode for å fylle cellene i tabellen	public void opprettCeller()	{				 	df = new DecimalFormat("0.0");					antallRader = 0;							tempFylke = reg.getFylkeListe();			tempFylke.trimToSize();			//Går gjennom en gang for å finne antall rader tabellen skal bestå av			for (int i = 0; i < tempFylke.size(); i++)			{				tempSted = tempFylke.get(i).getStedListe();				tempSted.trimToSize();									for (int j = 0; j < tempSted.size(); j++)				{					tempÅr = tempSted.get(j).getÅrObj(år);										if (tempÅr != null)					{  								antallRader++;							}						}			}						celler = new Object[antallRader][kolonneNavn.length];			int index = 0;					String minS, maxS, mmS;			double min, max, mm;			tempFylke = reg.getFylkeListe();			tempFylke.trimToSize();			for (int i = 0; i < tempFylke.size(); i++)			{				tempSted = tempFylke.get(i).getStedListe();				tempSted.trimToSize();								for (int j = 0; j < tempSted.size(); j++)				{					År tempÅr = tempSted.get(j).getÅrObj(år);					if (tempÅr != null)					{  														maxS = df.format(tempÅr.getÅrMaxTempSnitt());						minS = df.format(tempÅr.getÅrMinTempSnitt());						mmS = df.format(tempÅr.getÅrTotalMm());												//For å unngå problemer med norsk vs. engelsk oppsett med komma/punktum som skilletegn på datamaskinen						maxS = maxS.replace( ',', '.' );   						minS = minS.replace( ',', '.' ); 						mmS = mmS.replace( ',', '.' );																max = Double.parseDouble(maxS);						min = Double.parseDouble(minS);						mm = Double.parseDouble(mmS);												//Fyller opp cellene						celler[index][0] = new String(tempFylke.get(i).getNavn());						celler[index][1] = new String(tempSted.get(j).getNavn());						celler[index][2] = new Double(max);						celler[index][3] = new Double(min);						celler[index][4] = new Double(mm);													index++;					}					}			}		}	   //For å få satt vårt eget kolonnenavn.   public String getColumnName( int kolonne )   {      return kolonneNavn[ kolonne ];   }   //For å informere tabellmodellen om kolonnenes datatyper.   public Class getColumnClass( int kolonne )   {      return celler[ 0 ][ kolonne ].getClass();   }   public int getColumnCount()   {      return celler[ 0 ].length;   }   public int getRowCount()   {      return celler.length;   }      public Object getValueAt( int rad, int kolonne )   {      return celler[ rad ][ kolonne ];   }}