Programmazione:Java/Eclipse RCP/SWT Table: Tooltip per cella
Per poter pilotare i tooltip anzichè per tabella per cella intera JFace mette a disposizione uno dei suoi innumerevoli provider (org.eclipse.jface.viewers.CellLabelProvider), la cui estensione è molto semplice...
public class MenuCellLabelProvider extends CellLabelProvider {
  @Override
  public void update(ViewerCell cell) {
     cell.setText(cell.getElement().toString());
  }
  @Override
  public Point getToolTipShift(Object object) {
     return new Point(5, 5);
  }
  @Override
  public int getToolTipDisplayDelayTime(Object object) {
     return 500;
  }
  @Override
  public int getToolTipTimeDisplayed(Object object) {
     return 1000;
  }
  @Override
  public String getToolTipText(Object element) {
     return "Tooltipo ('" + element + "')";
  }
}
...e il suo utilizzo ancora di più...
MenuCellLabelProvider provider = new MenuCellLabelProvider();
FormToolkit ft = new FormToolkit(parent.getDisplay());
Table t = ft.createTable(parent, SWT.FULL_SELECTION | SWT.SINGLE);
t.setHeaderVisible(true);
t.setLinesVisible(true);
TableViewer viewer = new TableViewer(t);
viewer.setContentProvider(this);
ColumnViewerToolTipSupport.enableFor(viewer, ToolTip.NO_RECREATE);
TableViewerColumn column1 = new TableViewerColumn(viewer, SWT.NONE);
column1.setLabelProvider(provider);
column1.getColumn().setText("Column 1");
column1.getColumn().setWidth(100);
viewer.setInput("");