2009-09-05 16 views
0

私はスクロールバーをサポートするJPanelが必要なこの小さなJavaアプレットを構築しています。私はスクロールペーンなどのさまざまなソリューションを試しましたが、JavaアプリケーションやIFrameで使用したときにうまく動作しましたが、何らかの理由でJFramesの代わりにJavaアプレットや他のパネルに移動したときにスクロールバーが表示されませんでした現れる。スクロール可能なJPanelのJava

私がしようとしているのは、Graphic2d(時間が経つにつれて変化する)を使って小さなアプリケーションを作成することです。一定の幅に達すると、スクロールパネルが表示され、その中を移動できます。

ありがとうございました!

答えて

4

スクロールペインのビューポートに追加されたコンポーネントの「推奨サイズ」がスクロールペインのサイズより大きい場合、スクロールバーが自動的に表示されます。

パネルでカスタムペインティングを行っているので、パネルの優先サイズを変更する必要があります。

0

はあなたのJPanelおよび/またはあなたの側JScrollPaneにsetPreferredSize(寸法)および/またはsetMinimumSize(寸法)を使用しよう

あなたがするJScrollPaneを使用し、内部コンポーネント(何に基づいて、おそらく拡張にJPanelを配置する必要があります
1

あなたはその中に記述しています)。次に、JScrollPaneをその親(JFrame、JDialog、アプレットウィンドウなど)に塗りつぶす必要があります。次に、必要なサイズにしてから、スクロールバーをオンデマンドで表示する必要がありますまた、JScrollPaneのメソッドを使用しますが、通常はオンデマンドのスクロールバーが必要です)。

+0

「JFrame、JDialog、アプレットウィンドウなどの親を埋める」という方法でコンテンツコンテナに追加する方法を教えてください。 – vondip

+0

okスクロールバーが表示されない理由を理解していると思います。 graphics2dオブジェクトの代わりにたくさんのボタンを配置すると、スクロールバーが機能します。このgraphics2dオブジェクトと関係がある – vondip

+0

親を塗りつぶすことは、使用しているレイアウトによって異なります。グリッドバッグを使用している場合は、weightxとweighty = 1.0を使用します。他のレイアウトマネージャーではそれとは異なります – aperkins