TableViewer,单击首列实现全选与全不选

来源:互联网 发布:飞凡网络 编辑:程序博客网 时间:2024/05/19 12:24

有时候需要点击表格某列的时候,实现全选与全不选。那么可以将首列文本设置为空来实现这个功能。一般是用在check样式的Table或CheckboxTableViewer上。

具体看代码:

TableColumn columnCheck = new TableColumn(searchResults, SWT.NONE);

              columnCheck.setText("");//文本设置为””

              columnCheck.addSelectionListener(new SelectionAdapter(){

                     public void widgetSelected(SelectionEvent e) {

                            setAllCheckedStatus(!_boAllSelected);//实现全选与全取消功能

                 }

});

//其它列略

TableColumn columnTitle = new TableColumn(searchResults, SWT.NONE);

columnTitle.setText(Messages.getString("PlaylistView.Title"));

searchResults为Table类型,TableViewer是通过table封装的。

searchResults = toolkit.createTable(searchResultClient, SWT.CHECK | SWT.V_SCROLL | SWT.H_SCROLL | SWT.FULL_SELECTION);  

viewer = new TableViewer(searchResults);

private void setAllCheckedStatus(boolean status){

    for (int i = 0; i < searchResults.getItemCount(); i++) {

                     searchResults.getItem(i).setChecked(status);

       }

              _boAllSelected = status;

}

如图:

 

原创粉丝点击