繁体   English   中英

如何在CheckboxTableviewer的Columnheader中放置一个按钮? 当我单击该按钮时,我希望所有行都被选中

[英]How can I place a button in the Columnheader of CheckboxTableviewer ? And when I click that button I want all rows to be selected

如何在CheckboxTableviewerColumnheader中放置一个按钮? 当我单击该按钮时,我希望所有行都被选中。 我的桌子有10列,

  1. 我要在栏标题中添加一个按钮,
  2. 当我单击该按钮时,我希望选择表的所有行。

这是我的桌子

    final CheckboxTableViewer dataTable = CheckboxTableViewer.newCheckList(TableComposite2, SWT.MULTI | SWT.H_SCROLL   
                | SWT.V_SCROLL | SWT.BORDER |SWT.DM_FILL_BACKGROUND|SWT.FULL_SELECTION);
        dataTable .getTable().setHeaderVisible(true);
        dataTable .getTable().setLinesVisible(true);
        dataTable .setContentProvider(new ArrayContentProvider());


    //Action Check box
        TableColumn columnCHead=new TableColumn(dataTable .getTable(),SWT.NONE);
        columnCHead.setText("Delete");

        columnCHead.setWidth(50);
        // setting column input
        TableViewerColumn columnC=new TableViewerColumn(dataTable ,columnCHead);
        columnC.setLabelProvider(new ColumnLabelProvider()
        {
            public String getText(Object Element)
            {

                return null;
            }
        });

        TableColumn columnFS1Head=new TableColumn(dataTable .getTable(),SWT.NONE);
        columnFS1Head.setText("SOURCE DIRECTORY");
        columnFS1Head.setWidth(300);

        TableViewerColumn columnFS1=new TableViewerColumn(dataTable ,columnFS1Head);
        columnFS1.setLabelProvider(new ColumnLabelProvider()
        {
            public String getText(Object Element)
            {
                AgedFileMaster a=(AgedFileMaster)Element;
                return a.getDIRECTORY_PATH();
            }

在第一列中,我希望该按钮代替文本“删除”。 有人请帮忙。 我是SWT的初学者。

TableColumn行为已经类似于按钮,只需使用addSelectionListener来监听被按下的按钮。 您无法轻松地将控件添加到列标题。

选择所有呼叫

Object [] elements = get all the elements in your data model

dataTable.setSelecton(new StructuredSelection(elements));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM