All pastes #631735 Raw Edit

Wert im jspinner ndern

public java v1 · immutable
#631735 ·published 2007-07-24 08:41 UTC
rendered paste body
import java.awt.Component;import javax.swing.AbstractCellEditor;import javax.swing.JSpinner;import javax.swing.JTable;import javax.swing.SpinnerModel;import javax.swing.event.ChangeListener;import javax.swing.table.TableCellEditor;public class SpinnerTableCellEditor extends AbstractCellEditor implements TableCellEditor {  private JSpinner editor;    public Object[] werte = {"++", "+", "o", "-", "--"};    Object obj = werte[2];  Object grenzeOben = werte[0];  Object grenzeUnten = werte[4];    public SpinnerTableCellEditor()   {      editor = new JSpinner(new SpinnerModel()       {			public void setValue(Object arg0)                 {			obj = arg0;	    }			public Object getValue() {		    return obj;		}			public Object getPreviousValue() 		{			for(int i = 0; i < werte.length; ++i)			{				if(werte[i].equals(getValue()))				{					if(werte[i] == grenzeUnten)					{						System.out.println(grenzeUnten);						return grenzeUnten;					}					System.out.println(werte[i+1]);					return werte[i+1];				}			}			System.out.println("Hi, you never reach me");			return grenzeUnten; 		}				public Object getNextValue()		{			for( int i = 0; i< werte.length; ++i)			{				if ( werte[i].equals(getValue()))				{					if(werte[i] == grenzeOben)					{						System.out.println(grenzeOben);						return grenzeOben;					}					System.out.println(werte[i-1]);				    return werte[i-1]; 			    }		    }			System.out.println("Hi, you never reach me");			return grenzeOben;		}				public void removeChangeListener(ChangeListener arg0) {			// TODO Auto-generated method stub	    }		        public void addChangeListener(ChangeListener arg0) {			// TODO Auto-generated method stub			}	});  }  public Object getCellEditorValue()   {	    return editor.getValue();  }    public Component getTableCellEditorComponent(JTable table, Object werte, boolean isSelected, int zeile, int spalte)   {    editor.setValue(werte);    return editor;  }}import java.awt.*;import javax.swing.*;public class Aufgabe2 {  public static void main(String[] args)   {    JTable table = new JTable(new ZylinderTabelle());        // set table size    table.setPreferredScrollableViewportSize(new Dimension(1000, 100));        // set cell height    table.setRowHeight(table.getRowHeight() + 15);        for (int i = 0; i < 25; ++i)     {      table.getColumnModel().getColumn(i).setCellEditor(new SpinnerTableCellEditor());    }       JScrollPane scrollPane = new JScrollPane(table);    JPanel contentPane = new JPanel(new BorderLayout());    contentPane.add(scrollPane, BorderLayout.CENTER);        JFrame fenster = new JFrame("Zylinder Aufgabe");    fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);    fenster.setContentPane(contentPane);        fenster.pack();    fenster.setVisible(true);  }}