|
Eclipse插件开发系列6.TableViewer的使用(1)让数据显示出来(2) 在swt中用的是表格控件table,SWT Desiger插件里也只提供了table。但我们最常用的是一个在table基础上扩展而来的Jface控件TableViewer。 在下面的实例中演示了如何将数据用TableViewer显示出来的方法,它一般包含如下几个步骤(同时也是要点): - new一个TableViewer对象。在new 的时候通过参数可以定义它的一些属性(如下例),属性英文单词的比较明显示,不再说明。
- 对其布局(这和其它控件没什么区别)。
- 建立表格中的列。
- 设定内容器。一般写成内部类,但内容器基本一样,你可以单独拿出来写成一个类,让整个系统共用。
- 设定标签器。这个比较重要和复杂一些。
- 用setInput输入数据。以后这些数据会根据列设置、内容器、标签器的设定将自己显示在TableViewer的表格中。
另注:这个例子是一个Application(应用程序),在运行时请加上“VM自变量”,否则会出错并无法运行,怎么加请参照本系列前几面几章,有详细说明。这个例子中还有一个实体类,相当于数据库中的一条记录。例子加有详细注释,如有不明请在帖后回复说明,我将随时跟帖答复。 运行效果图: CSdn_net/glchengang/19767/r_6_1.jpg" align="baseline" border="0" /> 代码: /* * 陈刚 ,创建日期 2004-7-12 * * Email: .net">glchengang@yeah.net * Blog : glchengang.yeah.net */ package net.yeah.glchengang.tableviewer; import Java.util.ArrayList; import Java.util.Date; import Java.util.List; import org.eclipse.jface.viewers.ColumnWeightData; import org.eclipse.jface.viewers.ILabelProviderListener; import org.eclipse.jface.viewers.IStrUCturedContentProvider; import org.eclipse.jface.viewers.ITableLabelProvider; import org.eclipse.jface.viewers.TableLayout; import org.eclipse.jface.viewers.TableViewer; import org.eclipse.jface.viewers.Viewer; import org.eclipse.swt.SWT; import org.eclipse.swt.graphiCS.Image; import org.eclipse.swt.layout.FillLayout; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Table; import org.eclipse.swt.widgets.TableColumn;
|