我问了一个question before about VerticalRulers,这个提示我向VerticalRuler添加了第二个列,并试图给它添加标记,但标记总是出现在标准列上,但是不在我的身上。我添加了第二个行号列来说明我的问题。我如何改变这种行为?谢谢你的帮助。Eclipse编辑器:在垂直标尺的自定义列上显示标记
@Override
protected IVerticalRuler createVerticalRuler(){
IVerticalRuler ruler = super.createVerticalRuler();
ruler2 = (CompositeRuler) ruler;
column1 = new AnnotationRulerColumn(100);
ruler2.addDecorator(0, column1);
ruler2.addDecorator(2, createLineNumberRulerColumn());
column1.addAnnotationType("MARKER");
return ruler;
}
public String check_line(){
IEditorPart editor = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor();
IFileEditorInput input = (IFileEditorInput)editor.getEditorInput() ;
IFile file = input.getFile();
IResource res = (IResource) file;
try{
IMarker m = res.createMarker(IMarker.MARKER);
m.setAttribute(IMarker.LINE_NUMBER,2);
m.setAttribute(IMarker.MESSAGE, "lala");
m.setAttribute(IMarker.TEXT, "test");
m.setAttribute(IMarker.PRIORITY, IMarker.PRIORITY_HIGH);
m.setAttribute(IMarker.SEVERITY, IMarker.SEVERITY_INFO);
} catch (CoreException e) { ... }
return "marker created";
}
让我知道,如果我的回答没有帮助你,或者你仍然有问题... –