在测试以下简单代码时,我看到一个奇怪的行为:具有透明背景颜色的按钮变得越来越不透明,而鼠标进入或退出按钮的边界。这种奇怪的行为是什么?代码如下:
public class TransparentColorTest
{
public static void main( String[] args )
{
JFrame frame = new JFrame();
frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
frame.setLayout( new FlowLayout() );
frame.setSize( 200 , 200 );
Color transparentColor = new Color( 0 , 0 , 255 , 20 );
JButton testButton = new JButton();
testButton.setPreferredSize( new Dimension( 100 , 100 ) );
testButton.setBackground( transparentColor );
frame.add( testButton );
frame.setVisible( true );
}
}
Color构造函数的第四个参数确定颜色的透明度。