問題タブ [styleddocument]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
97134 参照

java - JTextPaneが新しい文字列を追加します

すべての記事で、「JEditorPaneに文字列を追加する方法」という質問への回答があります。のようなものです

私はこれを試しました:

その結果、「プロセスの配布:」なしで「終了時間:1000」を取得しました。

なぜこれが起こったのですか?

0 投票する
2 に答える
2392 参照

java - JTextPane に関連付けられた StyledDocument のフォント

JTextPane に関連付けられた StyledDocument が使用するフォントは? デフォルトでは、JTextPane と同じフォントを使用しますか? 特にフォントサイズが気になります。

0 投票する
1 に答える
12368 参照

java - JTextPane でのワード ラッピングの実装方法と、文字列をスペースなしでラップする方法を教えてください。

JTextPane では、ワードラップはどの程度正確に実装されていますか?

動作を変更できるように、それがどのように機能するかを正確に理解しようとしています。現在、JScrollPane 内に標準の JTextPane がある場合、テキストはスペースで分割されますが、長い単語内では分割されません。ウィンドウよりも広いスペースのないテキストの文字列がある場合、ラップ/ブレークは行われず、水平スクロールバーが表示されます。テキストの幅が増えると、ParagraphView の幅が (getWidth() を介して) テキストを保持するために増加します。

Lapitsky によるこの記事では、LabelView.getBreakWeight() は、スペースのあるラベルに対しては View.ExcellentBreakWeight を返し、スペースのないラベルに対しては View.GoodBreakWeight を返すと述べています (そして、GlyphView.java のコードはこれを確認しているようです)。GoodBreakWeightの代わりにBadBreakWeightを返すのですか?それともレイアウトに問題があるのでしょうか? それともバグがありますか?

ここにいくつかのコードがあります(あなたの楽しみのために):

スクロール ペインを取り出してテキスト ペインだけを使用しても、まだ折り返されないことに注意してください (ウィンドウの外に出たときにクリップされます)。


Swing の Javadoc では、一部のオブジェクト (JTextPane、View、および関連オブジェクトなど) がどのように連携するかについて十分に詳しく説明されていないようです。おそらく、各クラスの目的とそれらがどのように連携するかを詳述している、そのようなクラスの設計に関するドキュメントはありますか? 一般公開されてないだけ?(または、このような問題を抱えているのは私だけでしょうか? それとも、不十分なドキュメントは、一般的な開発者が扱うとは予想されないものに限定されているのでしょうか?)

0 投票する
2 に答える
241 参照

java - StyleConstants.setBoldのブール引数の意味は何ですか?

特定の範囲内の文字を太字に設定したい。どうすればそれができますか?

上記のコードは正しく機能しません。だが、

このコードは正常に機能します。

StyleConstants.setStrikeThrough(getMainStyle()、{SET / RESET}); SET / RESETについて、またはブール値が使用される理由について、私の仮定は正しいですか?

0 投票する
1 に答える
2420 参照

java - HTMLでStyledDocumentを使用して出力するには?

JTextPane使用してテキストを出力したいと考えていますStyledDocument。ここに私のStyledDocumentオブジェクトがあります:

現在の問題は、html コードでテキストを編集すると、希望どおりに表示されないことです。テキストを文字通りではなく太字で表示したい<b>Some Text</b>

これを行う方法はありますか?

0 投票する
1 に答える
1390 参照

java - StyledDocument を使用して jTextPane のスタイルとテキストを設定する

基本的な Swing アプリケーションを作成しています。jTextPaneとボタンがあります。ユーザーがjTextPaneでテキストを選択してボタンを押すと、選択したテキストが太字になります。これは、StyleDocumentを変更することによって行われます。

スタイル付きテキストを一時的に保存し、前のjTextPaneを閉じ、新しいjTextPaneを開き、以前に保存したスタイル付きテキストに基づいてデータを入力できるようにしたいと考えています。jTextPaneはコンストラクターでStyleDocumentを取りますが、古いStyleDocumentを使用して新しい jTextPane を構築しようとすると、機能していないように見えます。最終的に削除される以前の jTextPane StyleDocument からの参照を渡しているだけだからだと思います。

StyleDocument をコピーまたは複製する方法はありますか? インターフェイスであることは理解していますが、DefaultStyledDocument を使用していますか? これを行うより良い方法はありますか?

0 投票する
1 に答える
567 参照

java - JTextPaneのテキストの色を変更するためのJavaSwingの蛍光ペンとStyledDocument

の特定の単語やセクションの色を変更するためにsetCharacterAttributesを使用しています。StyledDocumentJTextPane

しかし、私はここで、同じことをするためにHighlighter(通常はDefaultHighlighter)を使用するいくつかの答えに気づきました。

2つのアプローチの本質的な違いは何ですか?StyledDocumentを操作するよりもhighligherを使用する方が優れている目的は何ですか?

0 投票する
1 に答える
653 参照

java - スタイル付きブロックを持つ JTextField

改行文字をテキスト <New Line> を別のフォント、スタイル、または色で表示するスタイル付きブロックに置き換える JTextField が必要です。

例によって、テキスト..

.. 次のように、1 行の JTextField でユーザーに表示されます。

親愛なる Mr. Smith, <New Line> blablabla... <New Line>よろしく...

これらの <New Line> は、単一の文字であるかのように選択可能で、単一のバックスペースで削除できるブロックである必要があります。リターン キーを押すと、キャレットの位置に <New Line> が追加されます。

をオーバーライドすることで可能になると思いますがPlainDocument、Document や EditorKit の API がわかりにくくて困っています。私はこれについていくつかの指針が必要です...

またはのように動作する限り(1 行、スクロールバーなし) 、JTextPaneまたはを使用することに異議はありません。JEditorPaneJTextField

助言がありますか?

0 投票する
1 に答える
10141 参照

java - JavaスイングJTextPaneに文字列を追加する方法は?

チャットアプリを作成しています。このチャット アプリケーションでは、Java Swing を使用JTextPaneして、ユーザーの表示名やメッセージの時間などの特定の文字列にスタイルを与える必要があります。それが私が選んだ理由JTextPaneですJTextArea。JTextPane では、文字列を追加できないので、文字列バッファを作成して文字列を追加してから、jTextPane.setText(stringBuffer.toString()).

これが私の問題です。文字列をJTextPanevia aに追加するStringBufferと、遅延が発生します。に行ごとに文字列を追加するにはどうすればよいJTextPaneですか?

0 投票する
3 に答える
154 参照

java - ドキュメントをロードし、テキストの一部にタグを付けるための Java ライブラリ

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

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

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

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

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

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

編集

説明のための例。

原文:

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

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

タグ付きテキストあり

ここに画像の説明を入力

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