我在SWT应用中有一个StyledText
小部件,格式化的文字如下:
Type -> Text
MessageID -> ID:205871803-172.30.227.122(89:ab:da:58:b9:f3)-32849-1332173293715
CorrelationIDAsBytes -> [B@d1c778
Expiration -> 0
Priority -> 4
Timestamp -> 1332173293715
Redelivered -> false
然而,这就是它最终看起来像:
是否有一些选项我可以打开它以“按原样”显示空格?
我尝试为它添加一些样式以使其看起来正确,但它仍然不起作用:
_messageDataText.addLineStyleListener( new LineStyleListener() {
public void lineGetStyle( final LineStyleEvent lineStyleEvent ) {
StyleRange styleRange = new StyleRange();
styleRange.start = 0;
styleRange.length = _messageDataText.getText().length();
styleRange.font = new Font( Display.getCurrent(), "Arial", 12, SWT.NORMAL );
lineStyleEvent.styles = new StyleRange[] {
styleRange };
}
} );
答案 0 :(得分:3)
显然这取决于字体。如果您使用“Courier New”而不是正确排列空格。
这是我改变的:
styleRange.font = new Font( Display.getCurrent(), "Courier New", 10, SWT.NORMAL );
另外,作为旁注 - 重要的是尽可能重复使用字体,否则会遇到令人讨厌的句柄问题。