1

StyledText ウィジェットは Java コードの一部を表示し、構文の強調表示に JavaLineStyler を使用します。ただし、いくつかのトークンを使用して選択したものとして表示したいと思います

codeViewer.setStyleRanges(sranges); //sranges is an array of StyleRange

しかし、StyledText ウィジェット ソースの次のコード スニペットによって、2 回目のスタイル変更が妨げられているようです。

public void setStyleRanges(StyleRange[] ranges) {
checkWidget();
if (isListening(ST.LineGetStyle)) return;
if (ranges == null) SWT.error(SWT.ERROR_NULL_ARGUMENT);
setStyleRanges(0, 0, null, ranges, true);

}

構文の強調表示を維持し、選択したトークンを表示する方法がわかりません。

4

1 に答える 1

2

LineStyleListenersetStyleRangesを同時に使用することはできません。どちらか一方を使用する必要があります。

JFace と、スタイルを設定する方法を提供するクラスを見ることができますTextViewer。これらは.SourceViewerTextPresentationStyledTextsetStyleRanges

于 2014-08-10T08:58:19.177 に答える