private class MyItemListener implements ItemListener{
public void itemStateChanged(ItemEvent e) {
//取得点击按钮的名字
String itemName= ((JRadioButton)e.getSource()).getText();
changeLookAndFeel(itemName);
}
}
//设置外观的private类型方法
private void changeLookAndFeel(String name){
String lookName="";
if(name.equals("Metal")){
lookName="javax.swing.plaf.metal.MetalLookAndFeel";
}
if(name.equals("Windows")){
lookName="com.sun.java.swing.plaf.windows.WindowsLookAndFeel";
}
if(name.equals("Nimbus")){
lookName="com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel";
}
if(name.equals("Motif")){
lookName="com.sun.java.swing.plaf.motif.MotifLookAndFeel";
}
try{
UIManager.setLookAndFeel(lookName);
//下面这句话必须有 ,否则外观不会发生变化
SwingUtilities.updateComponentTreeUI(this);
area.setText("当前外观类名:/n"+lookName);
}
catch(Exception ex){
ex.printStackTrace();
}
}
}
public class Test8_13 {
public static void main(String[] args) {
new LookAndFeelTest("java的外观测试");
}
}
运行结果如下图
图8-17 例8-13四种外观的显示效果
① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;
② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。