4

構文の強調表示とコード補完 (提案を提供するキャレットの場所にウィンドウがポップアップ表示される) を必要とするプロジェクトを開始しましたが、適切な解決策が見つかりません。JTextArea、JTextPane、JEditorPane など、テキスト入力を受け取る複数の Swing コンポーネントがあり、どれを使用するのが正しいかを判断するのが非常に難しくなっています。

このプロジェクトは、ユニティ ゲーム エンジンと統合されるプログラマ専用のテキスト エディタです。これは、コードの補完と強調表示が JavaScript と C# の構文で行われることを意味します。

当たり前かもしれませんが、一般的な考え方は、ユーザーが入力すると、特定の単語が指定された色に変わり、これらの単語がテキスト ファイルに保存されるというものです。コード補完のために、現在入力されている文字を取得できるようにする必要があります。この検出プロセスは、スペース文字を区切り文字として使用して再開されます。

御時間ありがとうございます :)

4

2 に答える 2

6

/の現在のキャレット インデックスに自動補完単語のポップアップ ウィンドウを表示できます(アイデアについては +1 @AndrewThompson ):JTextComponentJTextPaneJEditorPane

の場合JTextField:

JTextField を AutoSugestor として使用する

JTextComponentの s ieJTextPaneなどについてJEditorPaneは、現在のキャレット インデックスに表示されます。

ここに画像の説明を入力

単語のテキストの色を変更するには (つまり、シンタックス ハイライト)、こちらをご覧ください。

ここに画像の説明を入力

または、ハイライトされた単語が必要な場合。ここを参照してください:

ここに画像の説明を入力

于 2013-01-09T07:26:26.010 に答える
2

jintilla (広く使用されているscintillaの JNI ラッパー) またはjeditのコンポーネントを参照できますが、それらのライセンス条件がユース ケースに適合している場合はそうです。

于 2013-01-09T06:49:01.397 に答える