org.eclipse.swt.widgets.Table类的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(16.5k)|赞(0)|评价(0)|浏览(338)

本文整理了Java中org.eclipse.swt.widgets.Table类的一些代码示例,展示了Table类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Table类的具体详情如下:
包路径:org.eclipse.swt.widgets.Table
类名称:Table

Table介绍

[英]Instances of this class implement a selectable user interface object that displays a list of images and strings and issues notification when selected.

The item children that may be added to instances of this class must be of type TableItem.

Style VIRTUAL is used to create a Table whose TableItems are to be populated by the client on an on-demand basis instead of up-front. This can provide significant performance improvements for tables that are very large or for which TableItem population is expensive (for example, retrieving values from an external source).

Here is an example of using a Table with style VIRTUAL: ``

final Table table = new Table (parent, SWT.VIRTUAL | SWT.BORDER); 
table.setItemCount (1000000); 
table.addListener (SWT.SetData, new Listener () { 
public void handleEvent (Event event) { 
TableItem item = (TableItem) event.item; 
int index = table.indexOf (item); 
item.setText ("Item " + index); 
System.out.println (item.getText ()); 
} 
});

Note that although this class is a subclass of Composite, it does not normally make sense to add Control children to it, or set a layout on it, unless implementing something like a cell editor.

Styles: SINGLE, MULTI, CHECK, FULL_SELECTION, HIDE_SELECTION, VIRTUAL, NO_SCROLL Events: Selection, DefaultSelection, SetData, MeasureItem, EraseItem, PaintItem

Note: Only one of the styles SINGLE, and MULTI may be specified.

IMPORTANT: This class is not intended to be subclassed.
[中]此类的实例实现了一个可选的用户界面对象,该对象显示图像和字符串的列表,并在选中时发出通知。
可以添加到此类实例的项子项必须是[$0$]类型。
样式VIRTUAL用于创建一个Table,其TableItem由客户按需填充,而不是预先填充。这可以为非常大的表或TableItem填充非常昂贵的表(例如,从外部源检索值)提供显著的性能改进。
下面是一个使用Table和样式VIRTUAL:``的示例

final Table table = new Table (parent, SWT.VIRTUAL | SWT.BORDER); 
table.setItemCount (1000000); 
table.addListener (SWT.SetData, new Listener () { 
public void handleEvent (Event event) { 
TableItem item = (TableItem) event.item; 
int index = table.indexOf (item); 
item.setText ("Item " + index); 
System.out.println (item.getText ()); 
} 
});

请注意,尽管该类是Composite的子类,但通常情况下,向其添加Control子类或在其上设置布局是没有意义的,除非实现类似于单元编辑器的功能。
样式:单、多、检查、完整选择、隐藏选择、虚拟、无滚动事件:选择、默认选择、设置数据、测量项、擦除项、绘制项
注意:只能指定一种样式“单”和“多”。
重要提示:这个类不是子类。

代码示例

代码示例来源:origin: caoxinyu/RedisClient

@Override
protected void initData(Composite composite) {
  Table table =  new Table(composite, SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI | SWT.VIRTUAL);
  table.setHeaderVisible(true);
  
  table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 5));
  table.setLinesVisible(true);
  EditListener listener = new EditListener(table, false);
  table.addListener(SWT.MouseDown, listener);
  
  tblclmnNewColumn = new TableColumn(table, SWT.NONE);
  tblclmnNewColumn.setText(RedisClient.i18nFile.getText(I18nFile.VALUE));
  tblclmnNewColumn.setWidth(200);
  String[] data = result.getResult().split("\n");
  
  for(int i = 0 ; i < data.length; i ++){
    TableItem item = new TableItem(table, SWT.NONE);
    item.setText(data[i]);
  }
}

代码示例来源:origin: pentaho/pentaho-kettle

private void getInfo( PaloDimInputMeta myMeta ) throws KettleException {
 stepname = textStepName.getText();
 List<PaloDimensionLevel> levels = new ArrayList<PaloDimensionLevel>();
 for ( int i = 0; i < tableViewFields.table.getItemCount(); i++ ) {
  PaloDimensionLevel level =
   new PaloDimensionLevel( tableViewFields.table.getItem( i ).getText( 1 ), Integer
    .parseInt( tableViewFields.table.getItem( i ).getText( 2 ) ), tableViewFields.table.getItem( i ).getText(
    3 ), tableViewFields.table.getItem( i ).getText( 4 ) );
  levels.add( level );
 }
 myMeta.setDatabaseMeta( transMeta.findDatabase( addConnectionLine.getText() ) );
 myMeta.setLevels( levels );
 myMeta.setDimension( comboDimension.getText() );
 myMeta.setBaseElementsOnly( buttonBaseElementsOnly.getSelection() );
 myMeta.setChanged( true );
}

代码示例来源:origin: caoxinyu/RedisClient

@Override
  public void widgetSelected(SelectionEvent e) {
    TableItem[] items = table.getItems();
    TableItem[] selectedItems = table.getSelection();
    String selectedText = selectedItems[0].getText();
    int selected = table.getSelectionIndex();
    String upText = items[selected - 1].getText();
    items[selected].setText(upText);
    items[selected - 1].setText(selectedText);
    table.setSelection(selected - 1);
    if (selected == 1)
      tableItemSelected();
  }
});

代码示例来源:origin: pentaho/pentaho-kettle

/**
 * @param sortable the sortable to set
 */
public void setSortable( boolean sortable ) {
 this.sortable = sortable;
 if ( !sortable ) {
  table.setSortColumn( null );
 } else {
  table.setSortColumn( table.getColumn( sortfield ) );
 }
}

代码示例来源:origin: pentaho/pentaho-kettle

public void remove( int[] index ) {
 table.remove( index );
 if ( table.getItemCount() == 0 ) {
  new TableItem( table, SWT.NONE );
 }
}

代码示例来源:origin: pentaho/pentaho-kettle

public void removeAll() {
 table.removeAll();
 if ( table.getItemCount() == 0 ) {
  new TableItem( table, SWT.NONE );
 }
}

代码示例来源:origin: pentaho/pentaho-kettle

wParametersTab.setToolTipText( BaseMessages.getString( PKG, "SimpleMappingDialog.Parameters.Tooltip" ) );
Composite wParametersComposite = new Composite( wTabFolder, SWT.NONE );
props.setLook( wParametersComposite );
parameterTabLayout.marginWidth = 15;
parameterTabLayout.marginHeight = 15;
wParametersComposite.setLayout( parameterTabLayout );
fdMappings.bottom = new FormAttachment( wInheritAll, -10 );
wMappingParameters.setLayoutData( fdMappings );
wMappingParameters.getTable().addListener( SWT.Resize, new ColumnsResizer( 0, 50, 50 ) );
 TableItem tableItem = wMappingParameters.table.getItem( i );
 tableItem.setText( 1, parameters.getVariable()[ i ] );
 tableItem.setText( 2, parameters.getInputField()[ i ] );
fdParametersComposite.right = new FormAttachment( 100, 0 );
fdParametersComposite.bottom = new FormAttachment( 100, 0 );
wParametersComposite.setLayoutData( fdParametersComposite );
wParametersComposite.layout();

代码示例来源:origin: caoxinyu/RedisClient

grpValues.setLayout(new GridLayout(4, false));
table = new Table(grpValues, SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI);
table.setHeaderVisible(true);
table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 3, 2));
table.addSelectionListener(new SelectionAdapter() {
  @Override
  public void widgetSelected(SelectionEvent e) {
table.setLinesVisible(true);
table.addListener(SWT.MouseDown, new EditListener(table, true));
tblclmnNewColumn = new TableColumn(table, SWT.NONE);
tblclmnNewColumn.setText(RedisClient.i18nFile.getText(I18nFile.VALUE));
tblclmnNewColumn.setWidth(200);
Button btnAdd = new Button(grpValues, SWT.NONE);
btnAdd.setLayoutData(new GridData(SWT.FILL, SWT.TOP, false, false, 1, 1));
btnAdd.addSelectionListener(new SelectionAdapter() {
  @Override
  public void widgetSelected(SelectionEvent e) {

代码示例来源:origin: pentaho/pentaho-kettle

wFileTab.setText( BaseMessages.getString( PKG, "ExcelWriterDialog.FileTab.TabTitle" ) );
Composite wFileComp = new Composite( wTabFolder, SWT.NONE );
props.setLook( wFileComp );
fileLayout.marginWidth = 3;
fileLayout.marginHeight = 3;
wFileComp.setLayout( fileLayout );
wbFilename = new Button( fileGroup, SWT.PUSH | SWT.CENTER );
props.setLook( wbFilename );
wbFilename.setText( BaseMessages.getString( PKG, "System.Button.Browse" ) );
wbFilename.setLayoutData( fdbFilename );
wFileComp.setLayoutData( fdFileComp );
for ( int t = 0; t < wFields.table.getColumnCount(); t++ ) {
 wFields.table.getColumn( t ).setWidth( 20 );

代码示例来源:origin: caoxinyu/RedisClient

sashForm_2.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
Composite composite_4 = new Composite(sashForm_2, SWT.NONE);
label = new Label(composite_5, SWT.NONE);
label.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1));
label.setText(RedisClient.i18nFile.getText(I18nFile.CHANNEL));
final Text channel = new Text(composite_5, SWT.BORDER);
channel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
channel.setBounds(0, 0, 73, 21);
final Table table = new Table(sashForm_2, SWT.BORDER | SWT.FULL_SELECTION);
table.setHeaderVisible(true);
table.setLinesVisible(true);
EditListener listener = new EditListener(table, false, true);
table.addListener(SWT.MouseDown, listener);
tblclmnNewColumn = new TableColumn(table, SWT.NONE);
tblclmnNewColumn.setWidth(100);
tblclmnNewColumn.setText(RedisClient.i18nFile.getText(I18nFile.TIME));
sashForm_2.setWeights(new int[] {1, 2});
btnNewButton = new Button(composite_5, SWT.NONE);
btnNewButton.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1));
btnNewButton.setBounds(0, 0, 75, 25);

代码示例来源:origin: pentaho/pentaho-kettle

Label wlLogTimeout = new Label( wLogOptionsComposite, SWT.RIGHT );
wlLogTimeout.setText( BaseMessages.getString( PKG, "TransDialog.LogTimeout.Label" ) );
wlLogTimeout.setToolTipText( BaseMessages.getString( PKG, "TransDialog.LogTimeout.Tooltip" ) );
props.setLook( wlLogTimeout );
FormData fdlLogTimeout = new FormData();
fdlLogTimeout.left = new FormAttachment( 0, 0 );
fdlLogTimeout.right = new FormAttachment( middle, -margin );
fdlLogTimeout.top = new FormAttachment( wLogTable, margin );
wlLogTimeout.setLayoutData( fdlLogTimeout );
wLogTimeout = new TextVar( transMeta, wLogOptionsComposite, SWT.SINGLE | SWT.LEFT | SWT.BORDER );
 TableItem item = wOptionFields.table.getItem( i );
 item.setChecked( field.isEnabled() );
 item.setText( new String[] {
  "", Const.NVL( field.getFieldName(), "" ), Const.NVL( field.getDescription(), "" ) } );
wOptionFields.table.getColumn( 0 ).setText(
 BaseMessages.getString( PKG, "TransDialog.TransLogTable.Fields.Enabled" ) );
wLogOptionsComposite.layout( true, true );
wLogComp.layout( true, true );

代码示例来源:origin: caoxinyu/RedisClient

grpFavorites.setLayout(new GridLayout(4, false));
table = new Table(grpFavorites, SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI);
table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 3, 2));
table.addSelectionListener(new SelectionAdapter() {
  @Override
  public void widgetSelected(SelectionEvent e) {
table.setLinesVisible(true);
table.setHeaderVisible(true);
TableColumn tblclmnNewColumn = new TableColumn(table, SWT.NONE);
tblclmnNewColumn.setWidth(100);
tblclmnNewColumn.setText(RedisClient.i18nFile.getText(I18nFile.NAME));
TableColumn tblclmnNewColumn_1 = new TableColumn(table, SWT.NONE);
tblclmnNewColumn_1.setText(RedisClient.i18nFile.getText(I18nFile.FAVORITE));
btnRemoveButton.setText(RedisClient.i18nFile.getText(I18nFile.REMOVE));
Composite composite = new Composite(shell, SWT.NONE);
composite.setLayout(new FillLayout(SWT.HORIZONTAL));
composite.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false, 1, 1));
Button btnOk = new Button(composite, SWT.NONE);

代码示例来源:origin: pentaho/pentaho-kettle

Composite vCompositeTabFieldOut = new Composite( wTabFolder, SWT.NONE );
FormLayout formLayout = new FormLayout();
formLayout.marginWidth = Const.FORM_MARGIN;
formLayout.marginHeight = Const.FORM_MARGIN;
vCompositeTabFieldOut.setLayout( formLayout );
props.setLook( vCompositeTabFieldOut );
fieldOutTableView.setReadonly( false );
fdTable.left = new FormAttachment( 0, 0 );
fdTable.top = new FormAttachment( 0, margin );
fdTable.right = new FormAttachment( 100, 0 );
vCompositeTabFieldOut.setLayoutData( fdInComp );
if ( fieldOutTableView.table.getItemCount() == 0 && outWsdlParamContainer != null ) {
 RowMetaInterface r = getOutWebServiceFields();
 for ( int i = 0; i < r.size(); ++i ) {
  String wsType = r.getValueMeta( i ).getTypeDesc();
  TableItem vTableItem = new TableItem( fieldOutTableView.table, SWT.NONE );
  vTableItem.setText( 2, wsName );
  vTableItem.setText( 3, wsType );
  if ( oldTableView != null ) {
   String previousField = getField( oldTableView.table.getItems(), wsName );

代码示例来源:origin: pentaho/pentaho-kettle

/**
 * Copy information from the meta-data input to the dialog fields.
 */
public void getData() {
 if ( jobEntry.getName() != null ) {
  wName.setText( jobEntry.getName() );
 }
 if ( jobEntry.arguments != null ) {
  for ( int i = 0; i < jobEntry.arguments.length; i++ ) {
   TableItem ti = wFields.table.getItem( i );
   if ( jobEntry.arguments[i] != null ) {
    ti.setText( 1, jobEntry.arguments[i] );
   }
   if ( jobEntry.filemasks[i] != null ) {
    ti.setText( 2, jobEntry.filemasks[i] );
   }
  }
  wFields.setRowNums();
  wFields.optWidth( true );
 }
 wPrevious.setSelection( jobEntry.argFromPrevious );
 wIncludeSubfolders.setSelection( jobEntry.includeSubfolders );
 wDeleteAllBefore.setSelection( jobEntry.deleteallbefore );
 wName.selectAll();
 wName.setFocus();
}

代码示例来源:origin: caoxinyu/RedisClient

tbtmServer.setText(RedisClient.i18nFile.getText(I18nFile.GENERAL));
Table tableServer = new Table(tabFolder, SWT.BORDER | SWT.FULL_SELECTION);
tbtmServer.setControl(tableServer);
tableServer.setHeaderVisible(true);
tableServer.setLinesVisible(true);
EditListener listener = new EditListener(tableServer, false);
tableServer.addListener(SWT.MouseDown, listener);
TableColumn tblclmnKey = new TableColumn(tableServer, SWT.LEFT);
tblclmnKey.setText(RedisClient.i18nFile.getText(I18nFile.KEY));
tblclmnKey.setWidth(250);
TableItem hostItem = new TableItem(tableServer, SWT.NONE);
  TabItem tbtmServerInformation = new TabItem(tabFolder, SWT.NONE);
  tbtmServerInformation.setText(entry.getKey());
  Table table = new Table(tabFolder, SWT.BORDER | SWT.FULL_SELECTION);
  tbtmServerInformation.setControl(table);
  table.setHeaderVisible(true);
  table.setLinesVisible(true);
  EditListener listener1 = new EditListener(table, false);
  table.addListener(SWT.MouseDown, listener1);
btnNewButton.setText(RedisClient.i18nFile.getText(I18nFile.OK));

代码示例来源:origin: pentaho/pentaho-kettle

scrolledComposite.setLayout( new FillLayout() );
Composite wInputComposite = new Composite( scrolledComposite, SWT.NONE );
props.setLook( wInputComposite );
wExectionResults.getTable().addListener( SWT.Resize, new ColumnsResizer( 0, 50, 50 ) );
tiExecutionTimeField = wExectionResults.table.getItem( index++ );
tiExecutionResultField = wExectionResults.table.getItem( index++ );
tiExecutionNrErrorsField = wExectionResults.table.getItem( index++ );
tiExecutionLinesReadField = wExectionResults.table.getItem( index++ );
tiExecutionLinesWrittenField = wExectionResults.table.getItem( index++ );
tiExecutionLinesInputField = wExectionResults.table.getItem( index++ );
tiExecutionLinesOutputField = wExectionResults.table.getItem( index++ );
tiExecutionLinesRejectedField = wExectionResults.table.getItem( index++ );
tiExecutionLinesUpdatedField = wExectionResults.table.getItem( index++ );
tiExecutionLinesDeletedField = wExectionResults.table.getItem( index++ );
tiExecutionFilesRetrievedField = wExectionResults.table.getItem( index++ );
tiExecutionExitStatusField = wExectionResults.table.getItem( index++ );
tiExecutionLogTextField = wExectionResults.table.getItem( index++ );
tiExecutionLogChannelIdField = wExectionResults.table.getItem( index++ );
wTransExecutorParameters.optWidth( true );
wInputComposite.pack();

代码示例来源:origin: pentaho/pentaho-kettle

middle = props.getMiddlePct();
  nrSteps, true, null, props );
FormData fdSteps = new FormData();
fdSteps.left = new FormAttachment( 0, 0 );
fdSteps.right = new FormAttachment( middle, -margin );
fdSteps.top = new FormAttachment( 0, margin );
fdSteps.bottom = new FormAttachment( wOK, -margin * 2 );
wSteps.setLayoutData( fdSteps );
wSteps.table.setHeaderVisible( false );
wSteps.table.addSelectionListener( new SelectionAdapter() {
wSteps.table.addKeyListener( new KeyAdapter() {
wComposite = new Composite( shell, SWT.BORDER );
props.setLook( wComposite );
fdComposite.top = new FormAttachment( 0, margin );
fdComposite.bottom = new FormAttachment( wOK, -margin * 2 );
wComposite.setLayoutData( fdComposite );
compositeLayout.marginWidth = Const.FORM_MARGIN;
compositeLayout.marginHeight = Const.FORM_MARGIN;
wComposite.setLayout( compositeLayout );

代码示例来源:origin: pentaho/pentaho-kettle

/**
 * Copy information from the meta-data input to the dialog fields.
 */
public void getData() {
 Table table = wFields.table;
 if ( input.getStepName().length > 0 ) {
  table.removeAll();
 }
 for ( int i = 0; i < input.getStepName().length; i++ ) {
  TableItem ti = new TableItem( table, SWT.NONE );
  ti.setText( 0, "" + ( i + 1 ) );
  if ( input.getStepName()[i] != null ) {
   ti.setText( 1, input.getStepName()[i] );
  }
 }
 wFields.removeEmptyRows();
 wFields.setRowNums();
 wFields.optWidth( true );
 wStepname.selectAll();
 wStepname.setFocus();
}

代码示例来源:origin: pentaho/pentaho-kettle

wOptionsTab.setText( BaseMessages.getString( PKG, "JmsDialog.Options.Tab" ) );
Composite wOptionsComp = new Composite( wTabFolder, SWT.NONE );
props.setLook( wOptionsComp );
FormLayout optionsLayout = new FormLayout();
optionsLayout.marginHeight = 15;
optionsLayout.marginWidth = 15;
wOptionsComp.setLayout( optionsLayout );
fdOptionsComp.left = new FormAttachment( 0, 0 );
fdOptionsComp.top = new FormAttachment( 0, 0 );
fdOptionsComp.right = new FormAttachment( 100, 0 );
wOptionsComp.setLayoutData( fdOptionsComp );
optionsTable.getTable().addListener( SWT.Resize, event -> {
 Table table = (Table) event.widget;
 table.getColumn( 1 ).setWidth( 215 );
 table.getColumn( 2 ).setWidth( 215 );
} );
stream( optionsTable.getTable().getColumns() ).forEach( column -> {
 if ( column.getWidth() > 0 ) {
  column.setWidth( 120 );

代码示例来源:origin: pentaho/pentaho-kettle

wlFields = new Label( shell, SWT.LEFT );
wlFields.setText( "Revision history of " + elementDescription );
props.setLook( wlFields );
fdlFields = new FormData();
fdlFields.left = new FormAttachment( 0, 0 );
fdlFields.right = new FormAttachment( 100, 0 );
fdlFields.top = new FormAttachment( 0, margin );
wlFields.setLayoutData( fdlFields );
wFields.setLayoutData( fdFields );
wFields.table.addSelectionListener( new SelectionAdapter() {
 public void widgetSelected( SelectionEvent event ) {
  int index = wFields.getSelectionIndex();
wOpen = new Button( shell, SWT.PUSH );
wOpen.setText( BaseMessages.getString( "System.Button.Open" ) ); //$NON-NLS-1$
lsOpen = new Listener() {
 public void handleEvent( Event e ) {
wOpen.addListener( SWT.Selection, lsOpen );
wClose = new Button( shell, SWT.PUSH );

相关文章

微信公众号

最新文章

更多

Table类方法