|
Eclipse插件开发系列6.TableViewer的使用(1)让数据显示出来(5) } /** * 内容器(写成了一个内部类). 在这里对所有记录集中的记录进行处理 */ private static final class MyContentProvider implements IStrUCturedContentProvider { public Object[] getElements(Object element) { if (element instanceof List) return ((List) element).toArray();//将List转化为数组 else return new Object[0];//否则,返回一个空数组 } public void dispose() {} public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {} } /** * 标签器(写成了一个内部类).在这里对单条记录进行处理 */ private static final class MyLabelProvider implements ITableLabelProvider { /** * 这个方法返回的是各列的记录的文字 * 参数1:输入的对象 * 参数2:列号 * 返回值:注意一定要避免Null值,否则出错 */ public String getColumnText(Object element, int col) { PeopleEntity o = (PeopleEntity) element; //转换一下类型 if (col == 0) return o.getId().toString(); if (col == 1) return o.getName(); if (col == 2) return "" + o.getAge();//加个""是为了将int型转为String型 if (col == 3) return o.getCreateDate().toString(); return ""; } /** * 返回每条记录前面的图标 */ public Image getColumnImage(Object element, int columnIndex) { return null; } //-------------以下方法用处不大,暂时不管它----------------- public void addListener(ILabelProviderListener listener) {} public void dispose() {} public boolean isLabelProperty(Object element, String property) { return false; } public void removeListener(ILabelProviderListener listener) {} } }
|