したがって、ドキュメントを開くと、次のように表示されます。
これは、私のドキュメントの 2 ページ目の最初と最初の部分です (残りは空です)。緑色の四角形 (ボックス レイアウトによって管理される) 内のコンテンツを除いて、それらは 100% 同等です。
すべての可視要素 (マゼンタのもの、最初の JTextArea (他のものよりも大きい) は問題に関係ありません) の後、両方に Box.Filler が追加され、すべてのコンテンツがページの上部にプッシュされます。
そのため、ドキュメント アイテム 38. を開くと、他のすべてのアイテムと同じくらい高くなるはずですが、何らかの理由でそうではありません。
JScrollPane と、ドキュメントを開いた直後に両方のページを含むビューポートの両方で、再描画と検証を呼び出しませんでした。
また、ドキュメント内の任意の場所に別の要素を追加または削除すると、38 番が意味を成し、適切な高さにサイズ変更されます。ドキュメントの冒頭で行ったように、それが発生したときにサムの再描画と検証を呼び出しました。
同じサイズのフィラーで呼び出された chageShape() メソッドはうまくいきますが、それは汚い解決策のようです...
しかし、なぜすぐにそれをしないのですか?
編集: さらにテストを行った結果、フィラーがここでは悪い子であることがわかりました。しかし、最初のページのページが常に適切に更新される理由を理解するのは困難です (ページの要素が少なくても) が、2 つのページのコーディング方法に違いがないにもかかわらず、2 番目のページのページは更新を拒否します。 (同じオブジェクトの 2 つのインスタンス) であり、その再描画と検証は、両方より上位のコンテナーから呼び出されます。