ペイント プログラムを作成していますが、テキスト ツールの作成方法がわかりません。私がやりたいのは、クリックしてドラッグして、テキストボックスをキャンバスに表示することです。問題は、これをキャンバス コンポーネントの上に浮かぶ JTextComponent にしたくないことです。これにより、境界線を移動すると境界がちらつき、マウスがテキストボックスのすぐ隣にあるときにカーソルの一部がテキストボックスの下にあるように見えるという問題が発生します。
私がやろうとしていたのは、JTextArea を作成してから、キャンバス上のテキスト ボックスに対するマウスの位置に基づいて mouseEvents を起動することでした。キャンバス上のものは、コンポーネントに追加していない実際の JTextArea を (.getGraphics() を使用して) ペイントしたものにすぎません。これの問題は、コンポーネントが画面に表示されていないと .getGraphics() を呼び出せないことです。
私は、単純なはずのこのようなもののためだけに JTextComponent コード全体を再作成することを避けようとしています。
この問題の解決策や別のアイデアはありますか?