class TheCellEdit extends JComboBox implements TableCellEditor
{
//private JScrollBar scroll = new JScrollBar();
int row;
int col;
private Integer cellValue;
public TheCellEdit()
{
for(int i=0;i<1000;i++){
addItem(new Integer(i).toString());
}
}
TableModel model = null;
public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column)
{
this.row = row;
this.col = column;
model = table.getModel();
if(value instanceof Integer){
cellValue = (Integer)value;
//scroll.setValue(((Integer)value).intValue());
setSelectedItem(cellValue.toString());
}
return this;
}
/* (non-Javadoc)
* @see javax.swing.CellEditor#getCellEditorValue()
*/
public Object getCellEditorValue() {
// TODO Auto-generated method stub
cellValue = new Integer((String)this.getSelectedItem());
return new Integer((String)this.getSelectedItem());
}
/* (non-Javadoc)
* @see javax.swing.CellEditor#isCellEditable(java.util.EventObject)
*/
public boolean isCellEditable(EventObject arg0) {
// TODO Auto-generated method stub
return true;
}
/* (non-Javadoc)
* @see javax.swing.CellEditor#shouldSelectCell(java.util.EventObject)
*/
public boolean shouldSelectCell(EventObject arg0) {
// TODO Auto-generated method stub
return true;
}
/* (non-Javadoc)
* @see javax.swing.CellEditor#stopCellEditing()
*/
public boolean stopCellEditing() {
// TODO Auto-generated method stub
//setValue(scroll.getValue());
model.setValueAt(new Integer((String)this.getSelectedItem()), row, col);
return true;
}
/* (non-Javadoc)
* @see javax.swing.CellEditor#cancelCellEditing()
*/
public void cancelCellEditing() {
// TODO Auto-generated method stub
cellValue = new Integer((String)this.getSelectedItem());
}
/* (non-Javadoc)
* @see javax.swing.CellEditor#addCellEditorListener(javax.swing.event.CellEditorListener)
*/
public void addCellEditorListener(CellEditorListener arg0) {
// TODO Auto-generated method stub
//setValue(scroll.getValue());
}
/* (non-Javadoc)
* @see javax.swing.CellEditor#removeCellEditorListener(javax.swing.event.CellEditorListener)
*/
public void removeCellEditorListener(CellEditorListener arg0) {
// TODO Auto-generated method stub
}
} JTable table =new JTable(){
TheCellEdit editor = new TheCellEdit();
public TableCellEditor getCellEditor(int row, int col){
if (row == 0 && col == 0)
return editor;
return super.getCellEditor(row, col);
}
};
{
//private JScrollBar scroll = new JScrollBar();
int row;
int col;
private Integer cellValue;
public TheCellEdit()
{
for(int i=0;i<1000;i++){
addItem(new Integer(i).toString());
}
}
TableModel model = null;
public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column)
{
this.row = row;
this.col = column;
model = table.getModel();
if(value instanceof Integer){
cellValue = (Integer)value;
//scroll.setValue(((Integer)value).intValue());
setSelectedItem(cellValue.toString());
}
return this;
}
/* (non-Javadoc)
* @see javax.swing.CellEditor#getCellEditorValue()
*/
public Object getCellEditorValue() {
// TODO Auto-generated method stub
cellValue = new Integer((String)this.getSelectedItem());
return new Integer((String)this.getSelectedItem());
}
/* (non-Javadoc)
* @see javax.swing.CellEditor#isCellEditable(java.util.EventObject)
*/
public boolean isCellEditable(EventObject arg0) {
// TODO Auto-generated method stub
return true;
}
/* (non-Javadoc)
* @see javax.swing.CellEditor#shouldSelectCell(java.util.EventObject)
*/
public boolean shouldSelectCell(EventObject arg0) {
// TODO Auto-generated method stub
return true;
}
/* (non-Javadoc)
* @see javax.swing.CellEditor#stopCellEditing()
*/
public boolean stopCellEditing() {
// TODO Auto-generated method stub
//setValue(scroll.getValue());
model.setValueAt(new Integer((String)this.getSelectedItem()), row, col);
return true;
}
/* (non-Javadoc)
* @see javax.swing.CellEditor#cancelCellEditing()
*/
public void cancelCellEditing() {
// TODO Auto-generated method stub
cellValue = new Integer((String)this.getSelectedItem());
}
/* (non-Javadoc)
* @see javax.swing.CellEditor#addCellEditorListener(javax.swing.event.CellEditorListener)
*/
public void addCellEditorListener(CellEditorListener arg0) {
// TODO Auto-generated method stub
//setValue(scroll.getValue());
}
/* (non-Javadoc)
* @see javax.swing.CellEditor#removeCellEditorListener(javax.swing.event.CellEditorListener)
*/
public void removeCellEditorListener(CellEditorListener arg0) {
// TODO Auto-generated method stub
}
} JTable table =new JTable(){
TheCellEdit editor = new TheCellEdit();
public TableCellEditor getCellEditor(int row, int col){
if (row == 0 && col == 0)
return editor;
return super.getCellEditor(row, col);
}
};
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货