4

の中にJPanel配置している がありJScrollPaneます。キャンバスとして使用されているため、を使用して手動でペイントしてpaintComponent()います。パネルをスクロール ペインの幅に自動的に合わせる必要があります。次にgetWidth()、ペイント コードで使用して、コンテナーに合わせて自動的にスケーリングします。ただし、好みの高さを手動で設定できるようにしたいので、スクロール ペインの垂直スクロール機能を利用します。

これを行う最善の方法は何ですか?ペイント コードでスクロール ペインの幅を取得できれば、これは明らかに機能しますが、getParent().

4

2 に答える 2

4

パネルに Scrollable を実装させます。 getScrollableTracksViewportWidth/Height は、ビューポートが水平/垂直方向のサイズをそれぞれどのように処理するかを制御します。true の値は、コンポーネントがビューポートと同じサイズに強制される (つまり、その方向にスクロールしない) ことを示します。そのため、 getWidth() を一貫してスケーリングに使用できます。

于 2012-07-08T08:03:32.063 に答える
0

ペイントコードで、それ自体の水平幅をペイントの基礎として使用するようにします。
次に、スクロール ペインを水平方向にスクロールせず、垂直方向にのみスクロールするように設定します。
これで十分ですか?簡単すぎるように思えます。

于 2012-07-08T07:47:33.090 に答える