最近Eclipse Plugins 开发总结

·在使用TableViewer中使用CellEditor的时候,需要这样创建TableViewer:new TableViewer(composite, SWT.BORDER| SWT.V_SCROLL | SWT.H_SCROLL | SWT.MULTI | SWT.VIRTUAL| SWT.MULTI | SWT.FULL_SELECTION); ,这里主要是SWT.FULL_SELECTION的应用,否则在选中的时候比较麻烦


·当table中的数据被修改之后,需要调用setInput将input重新设置一下,这里的修改不包括使用CellEditor对数据的修改,或者refresh一下也可


·org.eclipse.ui.PartInitException: No editor descriptor for id 和Unable to create editor ID以及No editor descriptor for id问题的解决,有时候新添加一个dependencies的时候以前运行的plugin 工程会出现莫名其妙的错误,导致plugin加载失败,在error日志里面会含有上面的错误,其解决方法是将当前的runtime-Application从Eclipse Application中删除,重新新建一个就好了


·swt list没有用提供在户选择发生变化进行监听的监听器,需要自己实现


·emf作为table viewer的input的时候,如果要交换两个元素的位置,不能使用Collections.swap()方法,而必须使用EList的move()方法


·对reference为many使用SetCommand,需要传一个index来指定当前要set的reference的位置,这个位置可以使用ECollections.indexOf()来取得


·通过editorpart得到project的方法:IFileEditorInput ei = (IFileEditorInput) part.getEditorInput();
  this.project = ei.getFile().getProject();


·Access restriction: The type IJavaProject is not accessible due to restriction on required library问题的解决
今天碰到这个问题,调整一下plugin dependencies的顺序就好了

你可能感兴趣的:(eclipse,UI,Access)