Javaで簡単なテキストエディタを作成したいと思います。GridBagLayoutを使用して3つのJPanelを1つずつ作成する方法
私は自分のレイアウトを編成し、基本的に3つのJPanelsが必要であるという結論に達しました。 1番目と2番目のものはメニューバーであり、JPanelは2つのJLabelを持つので、高さは非常に短いでしょう。 すべてのテキストがその中に含まれるため、中間のものが最も高い高さのものである必要があります。
私はGridBagLayoutを使う必要があると思うが、うまくいかないと思うので、小さなものより10倍大きいものを占有する必要がある。そしてそれらのすべては、JFrameが提供する幅を利用します。
これまでのコードスニペットがある - 結果はこれであるように私は何を得る
GridBagConstraints gbc = new GridBagConstraints
gbc.fill = GridBagConstraints.HORIZONTAL;
gbc.gridx = 0;
gbc.gridy = 0;
mainFrame.add(upperGrid, gbc);
gbc.gridx = 0;
gbc.gridy = 1;
gbc.gridheight = 10;
mainFrame.add(upperGrid, gbc);
gbc.gridx = 0;
gbc.gridy = 11;
mainFrame.add(upperGrid, GBC);
-
1早いほど良いのヘルプについては、投稿[MCVE]または[ショート、自己完結型、正しい例](http://www.sscce.org/)。 2)ASCIIアート、またはGUIの*意図された*レイアウトの簡単な図を最小サイズで提供し、サイズ変更可能な場合は幅と高さを増やします。 –
私はあなたが['gbc.weighty'](https://docs.oracle.com/javase/8/docs/api/java/awt/GridBagConstraints.html#weighty)に異なる値を使うことでそれを達成できると思います。 –
gbc.weighty = 1.0に設定すると、コンポーネント間の垂直方向の間隔が少し増えますが、それらをJFrameの境界線に固定したい場合は、すべてのスペースを調整する必要があります。他のコンポーネントの境界線の間。 – Thomas