SWT Java表格查看器

SWT Java表格查看器,java,swt,jface,tableviewer,Java,Swt,Jface,Tableviewer,我的代码中实现了一个tableviewer,我想隐藏或跳过任何重复的单元格。例如,我的数据如下所示: Part Number, Value 123, "Test" 123, "Test1" 123, "Test2" 124, "Test" 124, "test1" 124, "test2" 我希望它看起来像: Part Number, Value 123, "Test"

我的代码中实现了一个tableviewer,我想隐藏或跳过任何重复的单元格。例如,我的数据如下所示:

Part Number, Value
123,         "Test"
123,         "Test1"
123,         "Test2"
124,         "Test"
124,         "test1"
124,         "test2"
我希望它看起来像:

Part Number, Value
123,         "Test"
             "test1"
             "test2"
124,         "test"
             "test1"
             "test2"

我认为格式不正确,但我想跳过PartNumber列中的任何重复值

我通过实现以下代码解决了这个问题:

        tcvc1.setLabelProvider(new ColumnLabelProvider()
        {
            @Override
            public String getText(Object element)
            {
                Result r = (Result) element;
                String sReturn = "";
                int index = 0;

                index = results.indexOf(r);
                sReturn = r.getPartNumber();

                if (index > 0)
                {
                    if (results.get(index-1).getPartNumber().equalsIgnoreCase(r.getPartNumber()))
                    {
                        sReturn="";                         
                    }
                }

                return sReturn;
            }
        });

发布一些代码。标签提供程序中的代码可以实现这一点。如果希望将元素包含在一个集合中,但不向用户显示它们,则可以使用ViewerFilter。