Import javax. Swing. jtable;
Import javax. Swing. jtextfield;
Import ...........
Public class mytable extends jtable {
Private string [] header;
Private object [] [] value;
Public mytable (string [] header, object [] [] value ){
This. header = header;
This. value = value;
Init ();
}
Private void Init (){
Defaulttablemodel DTM = new defaulttablemodel (value, header ){
@ Override
Public Boolean iscelleditable (INT row, int column ){
Jtextfield TF = new jtextfield ();
TF. addkeylistener (New keyadapter (){
Public void keyreleased (keyevent e ){
Event (E );
};
});
TF. setborder (borderfactory. createemptyborder (0, 0, 0, 0 ));
TF. setselectionstart (0 );
TF. setselectionend (Tf. gettext (). Length ());
Getcolumnmodel (). getcolumn (Column). setcelleditor (
New defaultcelleditor (TF ));
Return true;
}
};
Addkeylistener (New keyadapter (){
@ Override
Public void keyreleased (keyevent e ){
Event ();
}
});
}
Private void event (){
Int ROW = getselectedrow ();
Int column = getselectedcolumn ();
Defaultcelleditor OBJ = (defaultcelleditor) (getcolumnmodel ()
. Getcolumn (Column). getcelleditor ());
If (OBJ! = NULL ){
Jcomponent COM = (jcomponent) obj. getcomponent ();
Object value = NULL;
If (COM instanceof jtextfield ){
Value = (jtextfield) COM). gettext ();
} Else if (COM instanceof jtogglebutton ){
Value = (jtogglebutton) COM). isselected ();
}
System. Out. println ("row:" + row + ", column:" + column + ", value :"
+ Value );
}
}
}