■swingコンポーネント->Border |
ボーダーはコンポーネントの周囲に描画される境界線のことです。 直線、斜影、飾り縁など様々なボーダーがあります。コンポーネントはボーダーをひとつだけ保持できるが、ボーダーをネストさせることにより、複数のボーダーを付加できます。 |
|
|
コンポーネントに境界線をつけるには |
@new演算子を使って、ボーダークラスのコンストラクタからオブジェクトを生成 BevelBorder bevel = new BevelBorder(BevelBorder.RAISED); |
ABorderFactoryクラスのクラスメソッドを使う。 BorderFactoryクラスは標準的な境界線を生成するためのクラスです。 BorderFactory.createRaisedBevelBorder(); など |
SampleBorder.java |
import java.awt.*; |
import java.awt.event.*; |
import javax.swing.*; |
import javax.swing.border.*; |
public class SampleBorder extends JFrame{ |
Container contentPane; |
String str[] = {"BevelBorder RAISED","BevelBorder LOWERED","CompoundBorder", |
"EtchedBorder RAISED","EtchedBorder LOWERED","LineBorder","MatteBorder", |
" SoftBevelBorder RAISED"," SoftBevelBorder LOWERED","TitledBorder"}; |
JButton btn[] = new JButton[str.length]; |
public SampleBorder() { |
super("SampleBorder"); |
addWindowListener(new WindowAdapter() { |
public void windowClosing(WindowEvent e) { |
System.exit(0); |
} |
}); |
contentPane = getContentPane(); |
contentPane.setLayout(new GridLayout(5,2)); |
for(int i=0; i<str.length; i++){ |
btn[i] = new JButton(str[i]); |
contentPane.add(btn[i]); |
} |
btn[0].setBorder(BorderFactory.createRaisedBevelBorder()); |
btn[1].setBorder(BorderFactory.createLoweredBevelBorder()); |
btn[2].setBorder(BorderFactory.createCompoundBorder (BorderFactory.createLineBorder(Color.blue,4), BorderFactory.createEtchedBorder(BevelBorder.RAISED,Color.green,Color.gray))); |
btn[3].setBorder(new EtchedBorder(BevelBorder.RAISED, getBackground().darker(),getBackground().brighter())); |
btn[4].setBorder(new EtchedBorder(BevelBorder.LOWERED, getBackground().darker(),getBackground().brighter())); |
btn[5].setBorder(BorderFactory.createLineBorder(Color.red)); |
btn[6].setBorder(new MatteBorder(new ImageIcon("fmini_walk.gif"))); |
btn[7].setBorder(new SoftBevelBorder(BevelBorder.RAISED)); |
btn[8].setBorder(new SoftBevelBorder(BevelBorder.LOWERED)); |
btn[9].setBorder(BorderFactory.createTitledBorder(str[9])); |
setSize(490,500); |
setVisible(true); |
} |
static public void main(String[] args) { |
new SampleBorder(); |
} |
} |
もどる |