- - PR -
JTextPaneでテキスト行数を取得したい
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-10-04 14:28
javax.swing.JEditorPaneや、同JTextPaneで、表示中のテキストの行数を取得するために、何か良い方法はないものでしょうか?
JTextAreaなどと違って、直接行数を取得できるメソッドが見当たらないようです。どなたか詳しい方、お知恵をお貸し下さい。 |
|
投稿日時: 2005-10-05 15:35
自己完結です。
次のようなメソッドを設けました。 editPaneが文書編集用のJTextPane、 rowDocが行番号用のJTextPane/Document です。 /** * テキストエディタ行番号の可視/不可視を切り替える。 * @param b 可視/不可視 */ public void setRowNumbersVisible(boolean b) { try{ if(b == true){ StringBuffer numbers = new StringBuffer(); int RoomRowCount = editPane.getHeight() / editPane.getFont().getSize(); for(int n = 0; n < RoomRowCount; n++){ numbers.append(n); numbers.append("\n"); } rowDoc.insertString(0, numbers.toString(), rowDocsc.getStyle(StyleContext.DEFAULT_STYLE)); }else{ rowDoc.remove(0, rowDoc.getLength()); } }catch(BadLocationException e){ e.printStackTrace(); } } だいたい、良いようです。 |
1