我用下拉列表填充表格的每个单元格,我的表格中有2961行,这里是代码:
TableItem[] items = table.getItems();
for (int i = 0; i < 1000; i++) {
TableEditor tableEditor = new TableEditor(table);
CCombo combo = null;
combo = new CCombo(table, SWT.NONE);
combo.setText("CalleesExecuted");
for(Method2Representation caller:methodtraces2.get(i).getCalleesListExecuted()) {
combo.add(caller.toString());
}
tableEditor.grabHorizontal = true;
tableEditor.setEditor(combo, items[i], 13);
}
代码适用于i&lt; 1000。但是,当我使用i&lt; 2961,它对应于我的表中需要输入的行数时,我收到错误:
线程中的异常&#34; main&#34; org.eclipse.swt.SWTError:没有更多的句柄
在org.eclipse.swt.SWT.error(SWT.java:4559)
在org.eclipse.swt.SWT.error(SWT.java:4448)
在org.eclipse.swt.SWT.error(SWT.java:4419)
在org.eclipse.swt.widgets.Widget.error(Widget.java:482)
在org.eclipse.swt.widgets.Control.createHandle(Control.java:718)
在org.eclipse.swt.widgets.Composite.createHandle(Composite.java:292)
在org.eclipse.swt.widgets.Decorations.createHandle(Decorations.java:430)
在org.eclipse.swt.widgets.Shell.createHandle(Shell.java:593)
在org.eclipse.swt.widgets.Control.createWidget(Control.java:758)
在org.eclipse.swt.widgets.Scrollable.createWidget(Scrollable.java:151)
在org.eclipse.swt.widgets.Decorations.createWidget(Decorations.java:439)
在org.eclipse.swt.widgets.Shell。&lt; init&gt;(Shell.java:300)
在org.eclipse.swt.widgets.Shell。&lt; init&gt;(Shell.java:379)
在org.eclipse.swt.custom.CCombo.createPopup(CCombo.java:472)
在org.eclipse.swt.custom.CCombo。(CCombo.java:158)
在mygui.createContents(mygui.java:184)
在mygui.open(mygui.java:60)
在mygui.main(mygui.java:49)