Hey,
ich bekomm diesen Fehler.
Versuche in meiner Hauptklasse was einzubringen, was aus einer anderen klasse kommt.
mal n bisl code zum leichteren verständnis.
will in ner jtable eine zeile nach oben verschieben.
und die klasse MoveListener:
der fehler wird angezeigt bei dem konstruktor
genauer:
da unterstreicht er mirs rot und sagt halt: 'Cannot make a static reference to the non-static field'
THX anyway,
T1M
ich bekomm diesen Fehler.
Versuche in meiner Hauptklasse was einzubringen, was aus einer anderen klasse kommt.
mal n bisl code zum leichteren verständnis.
will in ner jtable eine zeile nach oben verschieben.
Code:
//zeile nach oben verschieben
pat_up.addActionListener(new MoveListener(table, MoveListener.MOVE_UP));
Code:
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
public class MoveListener implements ActionListener {
public int MOVE_UP = -1;
public int MOVE_DOWN = 1;
/**
* @param table
*/
public MoveListener(JTable table, int direction) {
myTable = table;
this.direction = direction;
}
JTable myTable = null;
public int direction = MOVE_UP;
/**
* The actual move action. based on the direciton,
* calculate the destination row and simply call the
* moveRow method. then call a method to set the
* row as currently selected row.
*/
public void actionPerformed(ActionEvent arg0) {
int selRow = myTable.getSelectedRow();
//find the destination row.
int destRow = selRow + direction;
//check if the destination row is within table limits
if (destRow >= 0 && destRow < myTable.getRowCount()) {
DefaultTableModel dtm = (DefaultTableModel) myTable.getModel();
dtm.moveRow(selRow, selRow, destRow);
//Move is done, now set selection.
myTable.setColumnSelectionAllowed(false);
myTable.setRowSelectionAllowed(true);
myTable.setRowSelectionInterval(destRow, destRow);
//make the change visible in UI.
myTable.repaint();
}
}
}
der fehler wird angezeigt bei dem konstruktor
Code:
pat_up.addActionListener(new MoveListener(table, MoveListener.MOVE_UP));
Code:
MoveListener.MOVE_UP
THX anyway,
T1M