3

ビュー内のコンテンツが拡大するときにスクロールペインがスクロールしないようにしたい。ポインタはありますか?タイトルでグーグルのバリエーションを試したり、JScrollPane のすべてのドキュメントを読んだりしましたが、まだ少し困惑しています。

編集:スクロールペイン内にテキストペインがあり、その横に別のテキストペインがあり、その横にペインの行番号が表示されます。新しい行が追加されるたびにこの番号枠がいっぱいになるので、おそらくこれが原因でビューが前に進みます。

4

2 に答える 2

2

スクロールするかスクロールしないかは DefaultCaret で設定可能です

    DefaultCaret caret = (DefaultCaret) textPane.getCaret();
    caret.setUpdatePolicy(DefaultCaret.NEVER_UPDATE);

テキストのスクロールに関するRob の素敵なブログ エントリも参照してください。

于 2011-09-13T07:30:33.993 に答える
0

通常、 JScrollPane はそれを行いません。getViewport().getViewPosition()次のようなコードでビューポートを拡大すると、修正されたままになります

JScrollPane scrollPane = ...;
scrollPane.getViewport().getView().setPreferredSize(...);
scrollPane.getViewport().revalidate();

コンポーネントが「スクロール」しているように変化する場合があります。その場合は、ビューをscrollPane.getViewport().setViewPosition(...)拡大した後にビューの位置を調整する必要があります..

于 2011-09-12T14:30:47.440 に答える