code: @Override
      public Component getTableCellEditorComponent(JTable table, Object value,
              boolean isSelected, int row, int column) {
          // Save the supplied value to the time picker.
          setCellEditorValue(value);
          // If needed, adjust the minimum row height for the table.
          zAdjustTableRowHeightIfNeeded(table);
          // This fixes a bug where the time text could "move around" during a table resize event.
          timePicker.getComponentTimeTextField().setScrollOffset(0);
          // Return the time picker component.
          return timePicker;
      }
docs: getTableCellEditorComponent, this returns the editor that is used for editing the cell. This
  is required by the TableCellEditor interface.
  
  For additional details, see the Javadocs for the function:
  TableCellEditor.getTableCellEditorComponent().