0

非常に単純な GUI と思われるものを作成するために、無駄な時間を費やしてきました。シンプルにする理由の 1 つは、サイズ変更可能であるとは考えていないことです。レイアウトしたとおりに表示したいのです。そのような単純な。

上下に同じ幅の 2 つの Jpanel を含む JFrame があります。最終的に JPanels が動作するようになり、同封されたコンポーネントが不思議なことに移動することなく、JPanels をスライドさせることができます。

しかし、私の人生では、JFrame で JPanels をうまく囲むことはできません。レイアウトとインスペクタを示すスクリーン ショットと、プレビュー方法を示す別のスクリーン ショットを添付します。ここに画像の説明を入力

(下端が切り落とされていることに注意してください。)

GUIビルダーで「WYSIWYGモード」で作業する方法はありますか? この時点では、サイズ変更可能性についてはまったく気にしません (実際、私は恐れています)。これには絶対レイアウトが正しい選択だと思っていたでしょうが、まだ何か問題があります。(基本的な解決策が必要です、皆さん--GridBagLayoutを提案しないでください!! ;)

編集:主にMaximumSizeのいくつかのデフォルトをJFrameに戻すことで、クリッピングの問題を取り除きました。右端はまだ 1 ピクセルずれていましたが、5 つ (5 つ!) の幅プロパティのどれがそれを制御しているかを見つけることができました。(境界、最大サイズ、最小サイズ、優先サイズ、および幅 - 最小サイズを変更すると修正されました。)

プロパティの微調整を完全に回避できないことはすでにわかっています(たとえば、「スナップ」をオーバーライドしてピクセル精度の位置決めを実現するなど)。ある時点で、あるべきではないいくつかのプロパティで遊んで、明らかに自分自身を悩ませました。問題は残ります。サイズ変更不可能な WYSIWYG GUI 設計の場合、絶対レイアウトが信頼できる選択であるかどうかです。および、編集を避けるべきプロパティはどれですか?

4

1 に答える 1

1

実際に実行した場合、プレビューよりもJFrameの表示が良くなっていますか?これはOSX固有のNBの動作だと思います。Win32ではこれは見られませんでした。今のところ、実際のJFrameの実行時にスペースが確実に描画されるように、下部にJLabel(テキストコンテンツとしてスペース)を追加してみてください。

于 2011-08-21T18:24:24.060 に答える