いくつJPanel
かのコンポーネント (チェックボックス、コンボなど) を追加した があります。フレームが最大化されると、コンポーネントの境界も右に移動またはシフトすることに気付きました。その後、復元時にコンポーネントが元の位置に戻されます。
21 インチ以上のモニターでは、コンポーネントが右端に移動していることがわかるため、コンポーネントのシフトが実際に違いを生みます。
を実装するカスタマイズされたレイアウトマネージャーを使用していますjava.awt.LayoutManager2
。クラスの内容は非常に大きいため、コンポーネントの境界を決定する領域を指します。
protected int hMargin = 0;
..
Insets insets = target.getInsets();
Dimension size = target.getSize();
int x = (size.width - insets.left - insets.right - 15 * hMargin);
そして、レイアウトを呼び出すフレームから、以下に示すようにコンポーネントを追加します。
JPanel pl = new JPanel(new OurLayout(this))
//add the component to panel
pl.add(checkBox);
..
と決めた時点で、呼び出しパネルを追加したフレームを最大化x
したときにコンポーネントがずれないように線を追加したいと思います。
これを達成する方法について誰かがアイデアを提案できますか? サンプルコードは高く評価されます。