2014-04-10 1 views
2

Eclipse 플러그인을 개발 중입니다. 이클립스에서 문자열을 보여주는 뷰가있다. 문제는 이클립스에서 콘솔/디버그보기와 다른 문자열이 배치된다는 것입니다. 문자열은 탭이없는 공백 문자 (\ t) 또는 다른 문자로 구분됩니다. 내보기의 레이블이 콘솔과 같은 문자열을 표시하고 있음을 어떻게 확인할 수 있습니까?Eclipse SWT 레이블 텍스트가 콘솔과 같은 문자열을 표시하지 않습니다.

콘솔/디버그 뷰 : http://s14.directupload.net/images/140410/ebydtn3n.png

레이블

내 Eclipse보기 : http://s1.directupload.net/images/140410/yccg36sn.png

내보기 클래스 :

public class PacketDumpView extends ViewPart { 


private Label dumpLabel=null; 
private Composite parent; 

@Override 
public void createPartControl(Composite parent) { 

    if(dumpLabel!=null) 
     return; 

    this.parent = parent; 
    GridLayout layout = new GridLayout(1, true); 
    parent.setLayout(layout); 
} 

@Override 
public void setFocus() { 
    // TODO Auto-generated method stub 

} 

public void setValues(String hexDump) { 
    if(dumpLabel==null){ 
     dumpLabel = new Label(parent, SWT.NONE); 
     dumpLabel.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false)); 
     dumpLabel.setText(hexDump); 
    } 
} 
+0

(http://en.wikipedia.org/wiki/Monospaced_font), 반면에'Label'은 그렇지 않습니다. SWT에서 모노 스페이스 글꼴을 사용하는 방법을 알아 보려면 [this] (http://stackoverflow.com/questions/221568/swt-os-agnostic-way-to-get-monospaced-font) 질문을보십시오. – Baz

답변

1

당신은 아마 당신의 라벨에 대한 고정 폭 글꼴이 필요합니다 . 텍스트 글꼴은 일반적으로 사용 레이블의 글꼴로 그를 설정할 수 있습니다, 고정 폭된다 이클립스 콘솔이 [고정 폭 글꼴]을 사용하기 때문이다

Font font = JFaceResources.getFont(JFaceResources.TEXT_FONT); 

dumpLabel.setFont(font); 
관련 문제