2011-01-07 13 views
1

JScrollPaneにJeditorPaneがあります。アプリケーションの特定の時点で、scrollPane(現在表示されているテキスト)とこのテキストだけに表示されるテキストを取得したいと思います。これを行う方法はありますか?JEditorPaneの可視テキストの取得

あなたは、ビューの位置とサイズを取得するには、ビューポートを使用することができます

エリオット

答えて

6

、ありがとうございます。あなたは、ビューポートの開始/終了点を知ったら

JViewport viewport = scrollPane.getViewport(); 
Point startPoint = viewport.getViewPosition(); 
Dimension size = viewport.getExtentSize(); 
Point endPoint = new Point(startPoint.x + size.width, startPoint.y + size.height); 

あなたが使用することができます。

int start = editorPane.viewToModel(startPoint); 
int end = editorPane.viewToModel(endPoint); 

、あなたがコンポーネントからテキストを取得することができますしたいテキストのオフセットを知っていたら:

String text = editorPane.getText(start, end - start); 

コードはテストされていません。

+0

これを把握しようとしている間、私はどれくらいの時間を伝えることができませんか。これは素晴らしいです。ありがとうございました! – Elliott

関連する問題