0

私は Swing 開発に不慣れで、ユーザーがテキスト ドキュメントをロードしてテキストの一部にタグ付けできる Java アプリケーションを作成しています。

テキストのタグ付けされた部分が強調表示され、ユーザーはタグ付けされたテキストをクリックしてタグを編集/削除できます。これを達成するために使用できるライブラリ/クラスはありますか?

私はすでに見てきましたJTextArea。しかし、私の知る限りでは、プレーンテキストしか表示できません(間違っている場合は修正してください

私が探しているものをより明確にするために:

Stack Overflow (SO) で質問にタグを付けると、タグが小さなボックスで強調表示され、タグの周囲が強調表示されます。私はJavaで似たようなものを探しています。

したがって、追加するコンポーネントが X の場合、X はプレーン テキストとタグ付きテキストを保持できるはずです。タグ付けされたテキストは、SO タグのように見えるはずです。

編集

説明のための例。

原文:

これはサンプルテキストです。

タグを付けた後、サンプルと言うと、これは次のようになります。

タグ付きテキストあり

ここに画像の説明を入力

その x は基本的に、 sampleに関連付けられたすべてのタグを削除するボタンです。

4

3 に答える 3

3

を使用して色を設定する実際の例がここStyledEditorKit.ForegroundActionにあります。の関連するクラスも示していますStyledEditorKit

画像

于 2012-06-30T05:46:12.587 に答える
3

これはjeditorpane と jtextpane に役立ちます

于 2012-06-30T04:52:45.950 に答える
0

私の考えは、テキストフィールドを取得し、それをダブルクリックして編集可能に設定し、タグを書いてEnterキーを押してから、タグを更新して強調表示するには、テキストフィールドでsetBackground、setForegroundを使用することです

JTextField jt=new JTextField("tag");

として設定します

jt.setEditabe(false);

MouseListener を jt に追加して、この LINKマウス リスナーを参照してください

jt.addMouseListener(this);

mouseClicked イベントにコードを記述し、ダブルクリックすると編集可能な状態に設定されます

public void mouseClicked(MouseEvent e) {
    int count=0;
    count=e.getClickCount();
    if(count==2)
    {
        jt.setEditable(true);
        count=0;

    }

}

次にタグを編集します...残りのコードを実行します。つまり、キーバインドを使用してEnterキーを押してTAGを更新します。このリンクを参照してください

于 2012-06-30T04:46:41.043 に答える