改变JOptionPane标准窗口的文字属性(颜色等)

JOptionPane是Swing中一个很有用的类,它提供了很多标准对话框,可以简化我们对这种标准对话框的使用,从而获得更友好的用户界面。
 
不时的会看到很多朋友问在使用JOptionPane时如何改变其字体大小、颜色等等。其实最初我也没有发现这种方法,找遍JOptionPane类,都没有发现有关Font的丝毫信息。但是,这个需求又很常见,应该会有解决的办法的。于是重新审视一下JOptionPane的API,终于发现这个问题。
 
一般在使用JOptionPane时,使用如下的代码:
 
JOptionPane.showMessageDialog(null, "Hello, world!");
 
这个语句显示的是一个简单的消息显示对话框:
 
 
注意,我们在使用JOptionPane是总是传进一个String进行显示,但是API却指出,JOptionPane接受的是Object。这下就会明白了:如果我们传入一个JLabel或者JPanel,使用HTML或者Java2D绘制图像,不就可以改变文字了吗?下面在试一下:
 
JOptionPane.showMessageDialog(null, new JLabel("<html><h2><font color='red'>Hello</font>, world!</h2></html>"));
 
这句代码正如我们想的那样:
 
 
这样,我们就改变了JOptionPane的文字属性。如果你觉得HTML控制不好,使用Java2D足可以表现各种文字属性了。

本文出自 “豆子空间” 博客,请务必保留此出处http://devbean.blog.51cto.com/448512/175335

posted @ 2013-05-28 14:36  jack_ou  阅读(780)  评论(0编辑  收藏  举报