ヌルレイアウトマネージャーとパネルを動作させるためにあなたがしなければならないことは何ですか?
-
30-09-2019 - |
質問
Null Layout Managerが機能するようにするのに問題がありましたが、Null Layout Managerを使用したときに覚えておくべきこの素晴らしいページを見つけました。それらの1つは私の問題であり、私はすぐに移動しました。
Null Layout Managerを使用して、別のパネルと同様の問題を抱えています。ただし、このページはどこにも見つかりません!では、何ですか?
この質問をする過程で、私は自分の問題を見つけました。この質問をどこにも見つけることができなかったので、この知識をサイトに追加したいと思っています。それは他の誰かに役立つかもしれません。
明確にするために、ドラッグとアニメーションの要件のために、このパネルにnullレイアウトマネージャーを使用する必要があるとすでに判断しました。それは問題ではありません。
解決
探していたリンクを見つけました:
http://download.oracle.com/javase/tutorial/uiswing/layout/none.html
これらの3つのことを示します。
- 呼び出してコンテナのレイアウトマネージャーをnullに設定します
Container.setLayout(null)
. - 電話
Component.setBounds()
コンテナの子供のそれぞれ。 - 電話
Component.repaint()
しかし、それが起こったとき、私の問題は、私がさらに1つのことをしていなかったということでした:
- 使用して各コンポーネントをコンテナに追加します
Container.add(Component)
他のヒント
コンテナにコンポーネントを追加することは、nullレイアウトまたはレイアウトマネージャーを使用するかどうかにかかわらず、実行することです。
ヌルレイアウトを使用するときに覚えておく必要があると思われる3つのことは次のとおりです。
コンポーネントのサイズを設定します(通常は優先サイズ)
コンポーネントの場所を設定します
コンポーネントを含むコンテナの優先サイズを設定します。ほとんどの時間は、優先サイズを設定しないとコードが機能しますが、パネルをスクロールペインに追加してみてください。この理由は、コンテナの優先サイズがスクロルペンのサイズよりも大きい場合、スクロールバーが自動的に表示されるためです。ヌルレイアウトの場合、優先サイズは0です。