首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SWT -表与TableViewer

SWT -表与TableViewer
EN

Stack Overflow用户
提问于 2012-09-14 21:17:34
回答 3查看 7.4K关注 0票数 8

我正在使用SWT创建一个新项目。在这个项目中,我将有3到4个不同的表。我对SWT相当陌生,我发现自己在问自己是在使用Table,还是应该使用TableViewer

我想学习一些关于什么时候只使用Table和什么时候TableViewer是最好的路线的好指南。

  1. 使用TableViewer而不是Table有什么好处?
  2. 是否所有表都有一个TableViewer
  3. 如果我正在处理表中的数据,那么Table是最好的方法吗?

只是真的想要一些清晰,所以当我创建这个项目时,我用正确的方式来做。

编辑

我已经为我的第一个表创建了一个Tablemodel类。但是,createColumns方法是专门针对该特定表的。

有可能有一个模板TableViewer类吗?

我是否可以更改该方法以使其更适用于不同的表?

下面是该方法的一个片段:

代码语言:javascript
复制
private void createColumns() {

  String[] titles = { "ItemId", "RevId", "PRL", "Dataset Name", "EC Markup" };
  int[] bounds = { 150, 150, 100, 150, 100 };

  TableViewerColumn col = createTableViewerColumn(titles[0], bounds[0], 0);
  col.setLabelProvider(new ColumnLabelProvider() {
     public String getText(Object element) {
        if(element instanceof AplotDataModel.AplotDatasetData)
           return ((AplotDataModel.AplotDatasetData)element).getDataset().toString();
        return super.getText(element); 
        }
     }); 

  col = createTableViewerColumn(titles[1], bounds[1], 1);
  col.setLabelProvider(new ColumnLabelProvider() {
     public String getText(Object element) {
        if(element instanceof AplotDataModel.AplotDatasetData)
           return ((AplotDataModel.AplotDatasetData)element).getRev().toString();
        return super.getText(element); 
        }
     });
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-09-15 08:39:55

总的来说,我建议使用TableViewer。查看器将处理大多数您需要自己使用Table做的事情。删除、添加和移动项以及自定义项目的显示方式更容易。使用查看器处理单击事件非常容易。

很少有这样的情况,在这种情况下,我会使用没有TableTableViewer。例如:当表仅用于显示一组不变的静态项时。在这种情况下,TableViewer可能有点过头了。

但是,您应该记住,您的项目可能会增长,您可能需要这些“简单”表来完成更多的任务,而不仅仅是显示静态项。在这种情况下,您必须用查看器替换表,这将是一项很大的工作。

因此,在使用没有TableTableViewer之前,要三思。

票数 4
EN

Stack Overflow用户

发布于 2013-04-19 13:38:50

http://sunnyshekhar.blogspot.com/2013/04/creating-swt-table-below-i-will-try-to.html

在这里,我试图解释如何在swt中创建一个表。我认为在swt中创建一个表说起来容易做起来难。我们必须面对许多复杂的问题。实现有点难理解。但是我们在swt中有很多定制功能。还有一点需要注意的是,Swt是Os之上的一个层,所以在Swt中,我们使用Os提供的任何东西。有时很难创建复选框并将其移动到单元格的中心。在创建表时,我遇到了许多类似的问题,但是您总是可以找到解决它们的方法。在Swt中,我们有定义良好的类,如果您实现了这些类,就会给出各种方法来处理表。

票数 1
EN

Stack Overflow用户

发布于 2012-09-14 21:50:29

我建议您始终使用TableViewer,除非您想做大量的定制工作。

http://www.eclipse.org/articles/article.php?file=Article-CustomDrawingTableAndTreeItems/index.html

好的文章开始

usage

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12432112

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档