完成上述代码后,是时候看看应用到实际中的显示效果了。这里我们绘制一组带有黑色下拉阴影效果,并有些高亮的特效文本(大小:140pt),参考下面代码片段:
示例代码5:
public static void main(String[] args)
{
// 实例化RichJLabel对象
RichJLabel label = new RichJLabel("Magic", 0);
// 下拉阴影效果
label.setLeftShadow(1, 1, Color.white);
label.setRightShadow(2, 3, Color.black);
label.setForeground(Color.gray);
label.setFont(label.getFont().deriveFont(140f));
// 设置Frame属性
JFrame frame = new JFrame("JFC/Swing:JLabel魔法");
frame.getContentPane().add(label);
frame.pack();
frame.setVisible(true);
}
程序运行后,显示效果如下:

如果将阴影基于原始位置的偏移值改为1pt,并使用同样的颜色,这样我们就轻而易举的创建了边框效果。参考下面代码示例:(我了显示更清楚,这里字体和边框我们没有使用同样的颜色)
// 边框效果
label.setLeftShadow(1, 1, Color.yellow);
label.setRightShadow(1, 1, Color.yellow);
label.setForeground(Color.green);
程序运行后,显示效果如下:

阴影的偏移量可以让我们有效地重新排列字符,创建出让人眼前一亮的3D效果,参考下面的代码片段:
// 3D效果(颜色渐退)
label.setLeftShadow(5, 5, Color.white);
label.setRightShadow(-3, -3, new Color(0xccccff));
label.setForeground(new Color(0x8888ff));
label.setFont(label.getFont().deriveFont(140f));
程序运行后,显示效果如下:

结束语
通过将JFC/Swing组件与Java 2D应用完美的结合在一起,便可以创建出更丰富的Swing应用,这里仅仅是抛砖引玉,希望能给大家带来一些帮助。
