問題タブ [jtextarea]
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.
java - JTextArea または JTextPane でのテキストの中央揃え - 水平方向のテキスト配置
JTextField のように、JTextArea の水平方向に中央揃えのテキストを作成する方法はありますか?
複数行のテキスト領域で同じことを達成する方法はありますか? JTextArea でメソッドが見つからないので、別のオプションはありますか? JTextPane? もしそうなら、どのように?
java - JScrollPaneのJTextArea、座標変換を表示
ビュー座標とビューポート座標の間で変換しようとしています。しかし、JViewport/JScrollpaneは文書化されているようには機能しないようです。JViewport.toViewCoordinates()
明らかにそうではない場合でも、ビューは常にコンポーネントの左上にあると考えています。
上記は不自然な例です。私の実数JTextArea
は1行よりも大きいです。JTextAreaの「モデル」座標(テキスト内のオフセット)は必要ありません。本物の2D座標が必要です。
ビューポートで最初に表示される文字は実際にはJTextAreaの3行目にあるため、ビューの位置は(0,0)であってはなりません。
JScrollPaneを使用するときにビューとコンポーネントの座標を変換する方法に関する他の提案はありますか?
- - 追加した - -
これも失敗します。
- - 追加した - -
これが私が受け取った回答に基づいた最終的な作業バージョンです。java.awt.Point[x=0,y=32]
それは私が期待したものを示しています。
java - JTextAreaに直接書き込む方法は?
にテキストを書きたいJTextArea
。答えは拡張することだと思いますが、java.io.Writer
ここで信頼できる答えが欲しいです。それは正しいことですか?
java - JTextAreaが全行を取得
JTAから選択した回線を取得するにはどうすればよいですか?
java - 複数行のセルを含むテーブルでの JComboBox のサイズ変更の問題
私は最近、Microsoft Excel と同様に、テキストを折り返すことができ、テキストが折り返されるにつれて行の高さを増やすことができるフィールドが必要であるという問題がありました。私はそれを正しく動作させることができました。唯一の問題は、テーブルに複数の JComboBox が含まれていることです。テキストをラップするフィールドから行の高さが増加すると、JComboBox ウィンドウと ArrowButton のサイズも増加します。JComboBox フィールドに DefaultCellEditor を使用し、JTextArea フィールドで使用する独自のエディター/レンダラーを作成しました。JComboBox の値が選択されると、値がフィールドに正しく表示されます。唯一の問題は、値を選択しているときに、行のサイズによっては JComboBox ウィンドウと ArrowButton が巨大になる可能性があることです。行の高さを増やす方法はありますか、しかし、JComboBox フィールドの高さは、それが入っている列を埋めるために成長するのではなく、同じままですか? デフォルトを使用する代わりに、JComboBox フィールド用のカスタム セル エディタを作成する必要があるかもしれないと考えています。前もって感謝します!
java - 自動サイズ変更とスクロールを行うJavaJTextArea
JPanelにJTextAreaがあります。JTextAreaでJPanel全体を埋め、JPanelのサイズが変更されたときにサイズを変更し、入力するテキストが多すぎる場合にスクロールするにはどうすればよいですか?
java - JTextArea を使用してテキスト コンソールをシミュレートする
ここでの私の目的は、必ずしも JTextArea ではなく、Java でコンソールのような動作をするコンポーネントを取得することですが、これは最初に試すのが理にかなっているように思えました。出力は JTextArea が提供するメソッドを使用するだけで十分に単純ですが、入力は別の問題です。入力を傍受し、それに基づいて行動したい-文字ごとに。漠然と関連するものに DocumentListener を使用する例をいくつか見つけましたが、入力した内容を簡単に確認できないようです。これは、それに基づいて行動する方法を決定する必要があるものです。
私はこれについて正しく行っていますか?これにはより良い方法がありますか?
アプリケーション コードの関連部分を囲みます。
助けてくれてありがとう。
EDIT1: JTextPane と DocumentFilter を使用してこれを実行しようとしましたが、何かを入力すると、DocumentFilter のメソッドが実行されません。変更したコードを同封します。
java - ActionListenerをJTextAreaに追加するための回避策
1つのJTextAreaにファイルパスを含む入力文字列を取得し、そのコンテンツを2番目のJTextAreaにロードするプログラムがあります。問題は、JTextAreaを使用しているときに、このフィールドを離れるときに2番目のJTextAreaにコンテンツをロードするactionListenerを追加できないことです。この問題を回避する方法は?
java - JTextArea.getDocument.remove()をオーバーライドしますか?
さて、JTextAreaのDocumentのremoveメソッドをオーバーライドしたいのですが、拡張するクラスがわかりません。ドキュメントを拡張できません。これはインターフェイスであるためです。つまり、JTextAreaが作成するドキュメントであってはなりません。では、JTextAreaのドキュメントのremoveメソッドを簡単にオーバーライドするにはどうすればよいでしょうか。
java - Java/Swing:JScrollPaneのJTextArea、自動スクロールを防ぐ方法は?
これは、私の「問題」が何であるかを示す実行可能なコードです。
にJTextArea
ラップされていJScrollPane
ます。のテキストを変更すると、テキストの最後まで自動的JTextArea
にJScrollPane
スクロールされますが、それは望ましくありません。
ここに私の要件があります:
- アプリケーションは自動的に垂直方向にスクロールするべきではありませんが...
- ユーザーは垂直方向にスクロールできる必要があります
- ユーザーが水平方向にスクロールできないようにする
- アプリケーションは決して水平方向にスクロールしないでください
- JTextArea は編集可能であってはなりません
(したがって、水平方向に収まりきらないほど多くのテキストがある場合でも、アプリケーションもユーザーも水平方向にスクロールできないはずです。垂直方向にスクロールできるのはユーザーだけです。)
これを「修正」する方法がわかりません。JTextArea
またはJScrollPane
メソッドを使用して修正する必要がありますか?
AFAICT これはまったく重複していないことに注意してください: JTextPane は親 JScrollPane でスクロールを防止します
ちょっと面白い例を次に示します。200 ミリ秒ごとに新しいテキストが挿入され、常にテキストの最後まで自動的にスクロールJTextArea
することがわかります。JScrollPane