1

MonoDevelop で Mono でパスカル コード エディターを作成しています。Mono.TextEditorコードエディタウィジェットとして使用しています。ただし、ウィジェットで行を強調表示する方法が見つかりません。コンパイル後、エラーが発生した行番号を収集するので、赤で強調表示したいと思います。見つけた

Mono.TextEditor.LineBackgroundMarker

これは私がやりたいことに関連しているようですが、どこでどのように使用するかがわかりません。

私が調べていた別のオプションは ViBuilder でしたが、その使用方法さえ知りません。この問題を解決するには、次の 2 つの方法が考えられます。

  1. ハイライトにするだけ
  2. デフォルトのスタイルが含まれているため、行をエラーとしてマークします。

    { "name": "Underline(Error)", "color":"invalid-red" }

これも可能な解決策のようです。

4

1 に答える 1

0

基になるドキュメントにマーカーを追加することで、テキスト エディターで行を強調表示できます。次のように TextDocument.AddMarker メソッドを使用します。

TextEditor textEditor;
var marker = new Mono.TextEditor.LineBackgroundMarker();     
int lineNumber = ...;
textEditor.Document.AddMarker(lineNumber, marker);
textEditor.QueueDraw();

Mono.TextEditor.StyleTextMarker クラスも見てください。このクラスには、探しているプロパティ "BackgroundColor" / "Color" が既に含まれています。下線は手動で行う必要がある場合があります (たとえば、StyleTextMarker から継承し、Draw メソッドをオーバーライドします)。

于 2013-04-28T21:08:29.247 に答える