学习Java6(七)Desktop(5)使用默认程序编辑所选文件

 1  import  java.awt.Desktop;
 2  import java.awt.event.ActionEvent;
 3 import java.awt.event.ActionListener;
 4 import java.io.File;
 5 import java.io.IOException;
 6 import javax.swing.JButton;
 7 import javax.swing.JFileChooser;
 8 import javax.swing.JFrame;
 9 import javax.swing.UIManager;
10 
11 public class TestDesktopEditFile {
12     private JFrame frame;
13 
14     /**
15      * Launch the application
16      * 
17      * @param args
18      */
19     public static void main(String args[]) {
20         try {
21             TestDesktopEditFile window = new TestDesktopEditFile();
22             window.frame.setVisible(true);
23         } catch (Exception e) {
24             e.printStackTrace();
25         }
26     }
27 
28     /**
29      * Create the application
30      */
31     public TestDesktopEditFile() {
32         initialize();
33     }
34 
35     /**
36      * Initialize the contents of the frame
37      */
38     private void initialize() {
39         try {
40             UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
41         } catch (Exception ex) {
42             ex.printStackTrace();
43         }
44         frame = new JFrame();
45         frame.getContentPane().setLayout(null);
46         frame.setBounds(10010022586);
47         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
48         final JButton openButton = new JButton();
49         openButton.setBounds(531010631);
50         openButton.addActionListener(new ActionListener() {
51             public void actionPerformed(ActionEvent e) {
52                 if (Desktop.isDesktopSupported()) {
53                     Desktop desktop = Desktop.getDesktop();
54                     JFileChooser jfc = new JFileChooser();
55                     jfc.showOpenDialog(frame);
56                     File file = jfc.getSelectedFile();
57                     if (file != null) {
58                         try {
59                             desktop.edit(file);//就这一行的区别
60                         } catch (IOException e1) {
61                             e1.printStackTrace();
62                         }
63                     }
64                 } else {
65                     System.out.println("不支持desktop");
66                 }
67             }
68         });
69         openButton.setText("edit");//哦哦哦,还有这一行也不一样,呵呵
70         frame.getContentPane().add(openButton);
71     }
72 }
73 


换了windows的风格以后界面顺眼多了
但是有点不理解
为啥不能自动判断操作系统去改变界面风格?

该类型文件没有对应的默认编辑程序的时候,会抛出异常,不能像WINDOWS下面那样弹出一个对话框让你从已知的程序列表中选择一个。
95950.html

交口称赞 2007-01-25 15:36 发表评论
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值