私はJEditorPane
をHTMLドキュメントに表示しています。そして、クリックするたびに次のビューポートにスクロールするボタンを作成しました。JScrollBarがラインヘッドにスクロールするようにします
ただし、ビューポートの上部にある行の一部が表示されることがあるので、JScrollBar
を先にスクロールさせる方法はありますか?
私はsetBlockIncrement()
メンバーメソッドを試しましたが、全く機能しませんでした。
ここにあなたが私の最高の試みです:
//get the visible rectangle as well as the most bottom right point.
Rectangle rec = jEditorPane1.getVisibleRect();
Point pt = new Point((int)rec.getX() +(int)rec.getWidth(),(int)rec.getY() + (int)rec.getHeight());
// get the offset of the most bottom right point
int off = jEditorPane1.viewToModel(pt);
try {
//get next viewable rectangle and scroll to it
rec = jEditorPane1.modelToView(off+100);
rec.height = jEditorPane1.getVisibleRect().height;
jEditorPane1.scrollRectToVisible(rec);
} catch (BadLocationException ex) {
Logger.getLogger(NewJFrame2.class.getName()).log(Level.SEVERE, null, ex);
}
すぐに役立つように、[SSCCE](http://sscce.org/)を投稿してください。 –
BTW - ラインに画像が埋め込まれ、画像の高さがビューポートの視認可能な高さよりも大きければどうなるでしょうか? –
返信いただきありがとうございます。ビューポートはフルスクリーンで、カスタマイズされたepubファイルを編集しています。しかしながら;あなたが記述したような画像がある場合、唯一のことは、長い線でも画像でもビューポートを開始することです。 – muaz