私は最後の1年間のプロジェクトのためのアプリケーションを完成させたばかりで、今はそのためのインターフェイスを作成する必要があります。アプリケーションには、多くの異なる画面、簡単なチュートリアル付きの紹介画面、および5 JPanel
とJMenu
のメイン画面が含まれていません。私はアプリケーションの各部分に独自のJPanel
を提供しています。私が作成しようとしているGUIは、これらのパネルをまとめてイントロを提供するべきです。Java Swing - さまざまな画面で妥当な次元を維持する
私がお聞きしたいのは、彼らがさまざまな画面サイズで同じように表示されるように、私は適切に異なる コンポーネントのサイズを設定することができる方法です。(小さな画面/大きな空白にお互いに本当に近づいていません
画面の寸法の何%かに基づいて手動で希望のサイズを設定する必要がありますか?(例:20%*幅、40%*高さ)それ以外の方法がありますか?
また、MigLayoutのようなライブラリを試してみると、この部分を完了するのに1週間かかることがありますか?標準のSwingよりも使いやすいものをたくさん読んでいます。
p.s
のJPanelは木、テキストエリア、ツールバー、ボタン、チェックボックス、コンボボックスおよびテキストフィールドを含みます。これらのパネルはそれぞれ非常に簡単です。
私は妥当な意味を持っています:私は私の頭(そして紙)にUIの写真を持っています。私はサイズに関係なく、私の画面にそれをしたい。画面が大きくなると、同じ相対的な大きさを持つ一方で大きくなるはずです。 IDは答えがパーセンテージを得ていると思いますか? – Giannis
Toolkit.getScreenSize()を使用してウィンドウの寸法を拡大縮小でき、通常は非常に簡単なので、計算を自分で行うことができます。 GridBagLayoutを使用した場合は、フレーム内のコンポーネント間で「余分な」スペースをどのように分割するかを指定することもできます。 – gorjusborg
GridBagLayoutはほとんどの人にとって混乱します。ここでの重要なアイデアは、LayoutManagerを使用することです。これにより、コンテナ内のコンポーネントが使用可能なスペースに応じて配置され、スケールされます。スイングチュートリアルには素晴らしいセクションがあります:http://docs.oracle.com/javase/tutorial/uiswing/layout/index.html – jackrabbit