GridBagLayoutManagerがこれを行う唯一のレイアウトマネージャであるかどうかはわかりませんが、ここに私の問題があります。 GridBagLayoutに水平にレイアウトされた4つのコントロールがあります。この例では単純にするために、各コントロールはフォームの1/4に等しくなり、各コントロールは他のコントロールと同じ比率でサイズが変更されます。 4つのコントロールはJTextFieldのもので、各テキストフィールドはResultSetのレコードの列に対応します。フォーム上の追加のコントロールを使用すると、レコードをナビゲートできます。GridBagLayoutマネージャとサイズ変更コントロール
1つのレコードから次のレコードまでナビゲートすると、テキストフィールドはテキストを更新して新しいデータを表示します。しかし、テキストフィールドは、表示されるテキストの量に比例して自動的にリサイズされます。大量のデータを含むテキストフィールドはサイズが拡大し、データ量の少ないテキストフィールドはスムーズになります。 ResultSetで10個のレコードを実行すると、コントロールは常にサイズが変更され、最小限に抑えるためにはかなり奇妙に見えます。
基本的なコンテナのサイズが変更されない限り、これらのコントロールのサイズが変更されないようにしたいと思います。したがって、ウィンドウのサイズを変更すると、コントロールのサイズを変更したい(Layoutの "weight x"変数による)が、コントロールのサイズを変更したくないのは、表示されているテキストの量が多くなるからです以下。
誰もがここにアイデアはありますか?
このサイズ変更の動作はJTextFieldの「問題」だけではなく、JComboBoxなどの他のコントロールでも発生します。 – user85116
JTextFieldの「列」の値を次のような数値に設定すると問題が解決します。 10程度である。これを指摘するSunのフォーラムの "camickr"に感謝します。 – user85116