- ベストアンサー
キャレットの幅を設定する方法
- キャレットの幅を設定する方法について教えてください。
- 以下のソースコードでは、色を設定するメソッドがありますが、キャレットの幅を設定する方法がわかりません。
- キャレットの幅を設定する方法について詳しく教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 確かに APIのドキュメントには何の記述もないですね。 私もわからなかったので、Swing のソースコードをたどっていったら、わかりました。 (コンパイルするときは、全角スペースを半角スペースに変換してからにしてください) public class Test extends JFrame { public Test() { setSize(300, 250); JPanel p = new JPanel(); JTextArea area = new JTextArea("test", 10, 10); area.setCaretColor(Color.RED); //キャレットの幅を設定 area.putClientProperty("caretWidth", Integer.valueOf(3)); //キャレットの幅を縦横比で設定することもできるみたい //area.putClientProperty("caretAspectRatio", Float.valueOf(0.2F)); p.add(area); add(p, BorderLayout.CENTER); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { public void run() { Test test = new Test(); test.setVisible(true); } }); } } JDKに付属している、Java のソースコードは、チョー勉強になりますよ。 おすすめです。
お礼
ありがとうございます。 Javaの仕様をみて考えるということが出来る必要があるのですね。 これでAPIを理解する手がかりが見つかったような気がしました。 本当にありがとうございます。