为了账号安全,请及时绑定邮箱和手机立即绑定

未调用标签提供程序

未调用标签提供程序

潇湘沐 2022-06-23 19:30:45
以下代码无法正确显示文本和 long,而是 Record 类的 toString()。public class CodeCheckerPreferencePage extends PreferencePage   implements      IWorkbenchPreferencePage{   public CodeCheckerPreferencePage() {      super( "Code checker statistics" );   }   @Override   protected Control createContents( Composite parent ) {      final TableViewer viewer =         new TableViewer(            parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL |                    SWT.FULL_SELECTION | SWT.BORDER );      viewer.setContentProvider( ArrayContentProvider.getInstance());      viewer.setInput( Stats.getStats().getRecords());      final Table table = viewer.getTable();      table.setHeaderVisible( true );      table.setLinesVisible( true );      final TableViewerColumn colFile =         new TableViewerColumn( viewer, SWT.NONE );      colFile.getColumn().setWidth( 400 );      colFile.getColumn().setText( "File" );      colFile.setLabelProvider( new ColumnLabelProvider() {         @Override public String getText( Object element ) {            return ((Stats.Record)element).getFile(); }});      final TableViewerColumn colConsumed =         new TableViewerColumn( viewer, SWT.NONE );      colConsumed.getColumn().setWidth( 80 );      colConsumed.getColumn().setText( "Consumed ms" );      colConsumed.setLabelProvider( new ColumnLabelProvider() {         @Override public String getText( Object element ) {            return String.format( "%3d",                      ((Stats.Record)element).getConsumed()); }});      final GridData gridData = new GridData();      gridData.verticalAlignment = GridData.FILL;      gridData.horizontalSpan = 2;      gridData.grabExcessHorizontalSpace = true;      gridData.grabExcessVerticalSpace = true;      gridData.horizontalAlignment = GridData.FILL;      viewer.getControl().setLayoutData(gridData);      return table;   }   @Override   public void init(IWorkbench workbench) {/**/}}“文件”列中显示的文本为“abcStats$Record@750e313c”,“已使用”列中不显示任何文本。我在“getText”方法中设置了断点:它们永远不会到达。我的错误在哪里?
查看完整描述

1 回答

?
慕森卡

TA贡献1806条经验 获得超8个赞

你必须在打电话之前设置好桌子的一切,setInput所以移动

  viewer.setInput( Stats.getStats().getRecords());

行到方法的末尾。


查看完整回答
反对 回复 2022-06-23
  • 1 回答
  • 0 关注
  • 121 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号