快速业务通道

用eJFace开发嵌入式应用程序 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-15
ite= new  Composite(parent,SWT.NONE);  composite.setLayout(new GridLayout (1,false));  tableviewer = new TableViewer (composite);  Table table = tableviewer.getTable();   table.setLayoutData(new GridData(GridData.FILL_BOTH));  column0  = new TableColumn(table,SWT.LEFT,0);  column0.setText("Books  Name");  column1 = new TableColumn(table,SWT.LEFT,1);  column1.setText("ISBN");  column2 = new TableColumn (table,SWT.LEFT,2);  column2.setText("Published Date");   column3 = new TableColumn(table,SWT.LEFT,3);  column3.setText ("Price");  column4 = new TableColumn(table,SWT.LEFT,4);  column4.setText("Available Now?");  for(int i =0,  n=table.getColumnCount();i<n;i++){    table.getColumn (i).pack();  }  table.setHeaderVisible(true);   table.setLinesVisible(true);   tableviewer.setContentProvider(new SampleTableContentProvider());  tableviewer.setLabelProvider( new SampleTableLabelProvider());  tableviewer.setInput(getInput()); } private  ArrayList getInput() {  Book b1 = new Book();  Book  b2 = new Book();  Book b3 = new Book();   b1.setName("Red Book");  b1.setIsbn("U2w3e4r5t6y");   b1.setPublisheddate("1980-08-28");  b1.setPrice("$1000");   b1.setAvailable("Yes");  b2.setName("Blue Book");   b2.setIsbn("U1q2w3e4r");  ...  return Books; }

用eJFace开发嵌入式应用程序(9)

时间:2011-08-27 IBM Sam Lo

TableViewerContentProvider 必须实现 IStructuredContentProvider 接口。TableViewerContentProvider 将定义此表 的显示关系。正如您可以在此类中看到的那样,我们将使用 getElements 方法获 得一个特定数组的每条数据,该数组可以表示书名,也可以表示价格。

清 单 7. TableViewerContentProvider

public class  SampleTableContentProvider implements IStructuredContentProvider  {  //other methods are not mentioned here are unchanged   public Object[] getElements(Object arg0) {   return  ((ArrayList)arg0).toArray();  } }

TableViewerLabelProvider 必须实现 ITableLabelProvider 接 口。TableViewerLabelProvider 将定义此表中每列的文本或图像。我们可以使用 getColumnText 方法获得每个元素的文本(在这里,我们并未实现 getColumnImage 方法)。

清单 8. TableViewerLabelProvider

public class  SampleTableLabelProvider implements ITableLabelProvider {  //other methods are not mentioned here are unchanged    public Image getColumnImage(Object arg0, int arg1) {    return null;  }  public String getColumnText(Object  arg0, int arg1) {   String result = "";   Book  book = (Book) arg0;   switch(arg1){    case 0:     result = book.getName();  break;    case 1:  result = book.getIsbn();  break;    case 2:  result = book.getPublisheddate();  break;    case  3:  result = book.getPrice();  break;    case  4:  result = book.getAvailable();  break;   }   return res

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号