ここでこの問題についてたくさん読んでいます...しかし、私はこれを解決する方法を得ていないようです。 私が試したすべてのソリューションは機能していません。もう1つのGridBagLayoutアラインメント・バクー
しかし、最初から始めてみましょう: 私はSwingと私のインターフェイスを構築していて、モジュール化しようとしています。 左のメインメニューにクラス(JPanelを拡張)があります。 メニューはGridBagLayoutのいくつかのボタンでビルドされていません。
しかし、私はこのレイアウトをウィンドウ(パネル)の上部に合わせることができません。 Exampel:などパネルの上部にあるラベルは、以下のテキストフィールド、テキストフィールドの下にあるボタン、
私のコードを参照してください。
public class LeftMenu extends JPanel {
public LeftMenu(){
GridBagLayout gbl_panel = new GridBagLayout();
gbl_panel.columnWidths = new int[] { 86, 0 };
gbl_panel.rowHeights = new int[] {32, 32, 32, 32, 32, 32, 32, 32, 32 };
gbl_panel.columnWeights = new double[] { 0.0, Double.MIN_VALUE };
gbl_panel.rowWeights = new double[] { 0.0, 0.0, 0.0, 0.0, 0.0 };
setLayout(gbl_panel);
JLabel lblEnterTrunkId = new JLabel("Enter Trunk ID");
GridBagConstraints gbc_lblEnterTrunkId = new GridBagConstraints();
gbc_lblEnterTrunkId.fill = GridBagConstraints.HORIZONTAL;
gbc_lblEnterTrunkId.insets = new Insets(0, 0, 5, 0);
gbc_lblEnterTrunkId.gridx = 0;
gbc_lblEnterTrunkId.gridy = 0;
gbc_lblEnterTrunkId.anchor = GridBagConstraints.NORTH;
add(lblEnterTrunkId, gbc_lblEnterTrunkId);
}
}
テキストフィールドと後ろに、以下のいくつかのボタンがありますラベル。 しかし、私はこれらは関係ないと思う... 彼らはほとんどラベルのように見える(ラベルではない...私はあなたが私を得ると思います...)
私が読んだすべてのガイドすべてがGridBagConstraintのアンカーを指しています。それは....しかし、働いていない。 パネルの真ん中には素晴らしい場所があります。
それは問題でない場合
:イストをSplitPaneのLeftComponentとして使用 パネル:public LeftMenu leftpanel = new LeftMenu();
splitPaneTrunks.setLeftComponent(leftpanel);
あなたの助けを楽しみにしています。
ここは私のサイドメニューの写真です...水平に中央に配置されています。そうではないはずです。代わりにGridBagLayout
を使用しての
1)より良い助け早くするためには、[MCVE]を投稿したり、[ショート、自炊、正しい例](http://www.sscce.org/)。 2)ASCIIアート、またはGUIの*意図された*レイアウトの簡単な図を最小サイズで提供し、サイズ変更可能な場合は幅と高さを増やします。 –
swingxライブラリでHorizontalLayoutを表示 –