TITLE:JTextFieldのMarginを設定する

Posted by terai at 2005-06-06

JTextFieldのMarginを設定する

JTextField内部の余白を設定します。

  • &jnlp;
  • &jar;
  • &zip;

#screenshot

サンプルコード

Insets m = (Insets) UIManager.get("TextField.margin");
InsetsUIResource iur = new InsetsUIResource(m.top,m.left+5,m.bottom,m.right);
UIManager.put("TextField.margin", iur);
Insets m = field01.getMargin();
Insets margin = new Insets(m.top,m.left+10,m.bottom,m.right);
field01.setMargin(margin);
Border b1 = BorderFactory.createEmptyBorder(0,20,0,0);
Border b2 = BorderFactory.createCompoundBorder(field02.getBorder(), b1);
field02.setBorder(b2);

解説

以下のサンプルでは、それぞれ左余白のサイズのみを変更しています。

javax.swing.plaf.InsetsUIResource[top=2,left=7,bottom=2,right=2]
    • UIManager.put()ですべてのJTextFieldの余白を指定しています。
      getMargin().left: 7
      getInsets().left: 8
      getBorder().getBorderInsets(c).left: 8
    • 一番上 + setMargin()で余白を指定しています。
      getMargin().left: 17
      getInsets().left: 18
      getBorder().getBorderInsets(c).left: 18
    • 一番上 + setBorder()で余白を指定しています。
      getMargin().left: 7
      getInsets().left: 28
      getBorder().getBorderInsets(c).left: 28

参考リンク

コメント