在默认GUI外观、打印和运行性能方面,java平台一直在努力缩小本机应用程序和Java应用程序程序是之间的差距。随着Java SE 6(代码名为Mustang)的问世,一些新的功能又被加入,包括新的系统托盘功能,更好的打印支持和桌面API(java.awt.Desktop API),从而进一步缩小以上差距。本文中描述的这些新型桌面API答应Java应用程序与主机平台上的特定文件类型的默认应用程序进行交互。为了更有效地描述这些API,本文还将向你展示一个简单的示例应用程序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()方法来确定是否桌面API可用。在Solaris操作系统和linux平台上,这种API是依靠于Gnome库的。假如这些库不可用,那么这个方法将返回false。在确定支持这种API(也就是说,isDesktopSupported()返回true)之后,该应用程序就可以使用静态方法getDesktop()来检索一个Desktop实例。