程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> J2SE >> Merlin的魔力: J2SE 1.4.2提供兩種新的外觀設計(1)

Merlin的魔力: J2SE 1.4.2提供兩種新的外觀設計(1)

編輯:J2SE

迄今為止,所有Merlin的魔力專欄都是關於Java 1.4版本的新特性,本文主要針對目前正在測試的1.4.2版本。Sun認為Windows的經典外觀已經過時,沒有人再使用Motif了 -- 至少在用戶桌面上。您將在這一標准Java平台的最新版本中找到新款Windows外觀以及稱為GTK+的全新外觀,當用戶使用Windows XP操作系統時新款Windows外觀看起來象Windows XP,GTK+使用普通Linux桌面的外觀。

Swing架構提供可插入外觀框架。例如,該框架提供一種標准方法使所有組件的字體為8-point bold Lucida,無需更改所有調用來創建一個組件。您只需插入新的設置到外觀中,像魔法一樣,所有調用都自動拾取這些更改。您甚至可以通過設置外觀來改變GUI的整體風格。以前,J2SE 1.4 為以平台為導向的UI提供外觀設計,如Microsoft Windows 和 Motif。它還提供專門面向Java平台的稱為Metal的交叉平台UI,無論用戶使用什麼桌面,它看起來都是千篇一律。

更改外觀設計

在我們檢驗最新的外觀設計之前,我們先展示如何更改一個Java程序的外觀,如表1所示:

表1:查找所有顯示模式

import Java.awt.*;
import Javax.swing.*;
public class Start extends JFrame {
public Start() {
setDefaultCloSEOperation(EXIT_ON_CLOSE);
Container c = getContentPane();
JButton button = new JButton("Hello");
c.add(button, BorderLayout.CENTER);
setSize(100, 50);
show();
}
public static void main(String[] args) {
try {
UIManager.setLookAndFeel(
UIManager.getCrossPlatformLookAndFeelClassName());
//UIManager.getSystemLookAndFeelClassName());
} catch (Exception e) {
}
new Start();
}
}

UIManager 的 setLookAndFeel() 調用允許您進入新外觀設計完全標准化的類名中。您再也無須擔心哪個類名適用於交叉平台Metal UI ( javax.swing.plaf.metal.MetalLookAndFeel) ,您只需使用 getCrossPlatformLookAndFeelClassName() 方法向系統詢問名字。另一方面, getSystemLookAndFeelClassName() 將返回專用於用戶桌面的UI類名。如果用戶在Windows設備上運行該程序,他將通過 com.sun.java.swing.plaf.windows.WindowsLookAndFeel 類獲得Windows UI。在UNIX設備上,將返回Motif/CDE接口或 com.sun.Java.swing.plaf.motif.MotifLookAndFeel 類。J2SE 1.4.2提供新GTK+外觀,但不返回作為UNIX機器的系統外觀類。這種情況將在J2SE 1.5版本中得到改善。圖1顯示了當在Windows 2000設備上運行時Start程序的輸出外觀:

圖1:交叉平台UI

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved