在默認(rèn)GUI外觀、打印和運(yùn)行性能方面,java平臺(tái)一直在努力縮小本機(jī)應(yīng)用程序和Java應(yīng)用程序程序是之間的差距。隨著Java SE 6(代碼名為Mustang)的問(wèn)世,一些新的功能又被加入,包括新的系統(tǒng)托盤(pán)功能,更好的打印支持和桌面API(java.awt.Desktop API),從而進(jìn)一步縮小以上差距。本文中描述的這些新型桌面API答應(yīng)Java應(yīng)用程序與主機(jī)平臺(tái)上的特定文件類(lèi)型的默認(rèn)應(yīng)用程序進(jìn)行交互。為了更有效地描述這些API,本文還將向你展示一個(gè)簡(jiǎn)單的示例應(yīng)用程序DesktopDemo。
txtMailTo.setEnabled(false); btnLaunchEmail.setEnabled(false); rbEdit.setEnabled(false); rbOpen.setEnabled(false); rbPrint.setEnabled(false); txtFile.setEnabled(false); btnLaunchapplication.setEnabled(false); } ... public javax.swing.JTextField txtBrowserURI; public javax.swing.JButton btnLaunchBrowser; public javax.swing.JTextField txtMailTo; public javax.swing.JButton btnLaunchEmail; public javax.swing.JRadioButton rbEdit; public javax.swing.JRadioButton rbOpen; public javax.swing.JRadioButton rbPrint; public javax.swing.JTextField txtFile; public javax.swing.JButton btnLaunchApplication; 使用Desktop.isDesktopSupported()方法來(lái)確定是否桌面API可用。在Solaris操作系統(tǒng)和linux平臺(tái)上,這種API是依靠于Gnome庫(kù)的。假如這些庫(kù)不可用,那么這個(gè)方法將返回false。在確定支持這種API(也就是說(shuō),isDesktopSupported()返回true)之后,該應(yīng)用程序就可以使用靜態(tài)方法getDesktop()來(lái)檢索一個(gè)Desktop實(shí)例。