package table_viewer; import org.eclipse.jface.viewers.ITableLabelProvider; import org.eclipse.jface.viewers.LabelProvider; import org.eclipse.swt.graphics.Image; ⁄** * データの表示方法を決定するラベルプロバイダ *⁄ public class TestResultLabelProvider extends LabelProvider implements ITableLabelProvider { ⁄** * セルにイメージを表示する場合はイメージを返却する *⁄ public Image getColumnImage(Object element, int columnIndex) { return null; } ⁄** * セルに表示するテキストを返却する *⁄ public String getColumnText(Object element, int columnIndex) { TestResult testResult = (TestResult)element; String result = ""; switch (columnIndex) { ⁄⁄ カラム0の場合はID case 0: result = String.valueOf(testResult.getId()); break; ⁄⁄ カラム1の場合は氏名 case 1: result = testResult.getName(); break; ⁄⁄ カラム2の場合は英語の結果 case 2: result = String.valueOf(testResult.getEnglishScore()); break; ⁄⁄ カラム3の場合は数学の結果 case 3: result = String.valueOf(testResult.getMathematicsScore()); break; ⁄⁄ カラム4の場合は国語の結果 case 4: result = String.valueOf(testResult.getJapaneseScore()); break; case 5: ⁄⁄ カラム5の場合は評価 if (testResult.getEvaluation() != null) { result = testResult.getEvaluation(); } break; } return result; } }
⁄⁄ コンテンツプロバイダの設定 testResultViewer.setContentProvider(new ArrayContentProvider()); ⁄⁄ ラベルプロバイダの設定 testResultViewer.setLabelProvider(new TestResultLabelProvider()); ⁄⁄ データの設定 testResultViewer.setInput(getTestResult()); ⁄⁄ getTestResultメソッドは、テスト結果のデータ(List)を返します