当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java AWT Desktop用法及代码示例


Desktop 类是 Java AWT 包的一部分。此类用于启动在本机桌面上注册的关联应用程序以处理URI或文件。

关于桌面课程的要点:

  • 它可以打开显示特定URI的默认网络浏览器
  • 它可以启动默认邮件客户端,并带有可选的 mailto URI
  • 它可以启动注册的应用程序来打开、编辑或打印特定文件。

Different Methods in Desktop Class

方法 解释
browse(URI u) 启动默认浏览器以显示特定 URI。
edit(File f) 启动关联的编辑器应用程序并打开文件。
getDesktop() 返回当前浏览器上下文的桌面实例。
isDesktopSupported() 返回当前平台是否支持此类。
isSupported(桌面.Action 操作) 返回当前平台是否支持某个操作。
mail() 启动用户默认邮件客户端的邮件撰写窗口。
mail(URI mailtoURI) 启动用户默认邮件客户端的邮件撰写窗口,填充由 mailto: URI 指定的消息字段。
open(File f) 启动关联的应用程序以打开文件
print(File f) 使用关联应用程序的打印命令,通过本机桌面打印工具打印文件。

以下示例程序旨在说明 Java AWT 中的 Desktop 类:

  • 启动浏览器并打开特定 URI 的程序
    
    // Java Program to Launch the browser 
    // and open a specific URI 
    import java.awt.*; 
    import javax.swing.*; 
    import java.awt.event.*; 
    import java.net.*; 
      
    class desk extends JFrame implements ActionListener { 
      
        // frame 
        static JFrame f; 
          
        // Main Method  
        public static void main(String args[]) 
        { 
            desk d = new desk(); 
      
            // create a frame 
            f = new JFrame("desktop"); 
      
            // create a panel 
            JPanel p = new JPanel(); 
      
            // create a button 
            JButton b = new JButton("launch"); 
      
            // add Action Listener 
            b.addActionListener(d); 
      
            p.add(b); 
            f.add(p); 
            f.show(); 
            f.setSize(200, 200); 
        } 
      
        // if button is pressed 
        public void actionPerformed(ActionEvent e) 
        { 
            try { 
      
                // create a URI 
                URI u = new URI("www.geeksforgeeks.org"); 
      
                Desktop d = Desktop.getDesktop(); 
                d.browse(u); 
            } 
            catch (Exception evt) { 
            } 
        } 
    } 

    输出:

  • 用于将邮件发送到特定 URI 的程序
    
    // Java Program to Launch the 
    // mail to a specific URI 
    import java.awt.*; 
    import javax.swing.*; 
    import java.awt.event.*; 
    import java.net.*; 
      
    class desk extends JFrame implements ActionListener { 
      
        // frame 
        static JFrame f; 
      
        // Main Method 
        public static void main(String args[]) 
        { 
            desk d = new desk(); 
      
            // create a frame 
            f = new JFrame("desktop"); 
      
            // create a panel 
            JPanel p = new JPanel(); 
      
            // create a button 
            JButton b = new JButton("launch"); 
      
            // add Action Listener 
            b.addActionListener(d); 
      
            p.add(b); 
            f.add(p); 
            f.show(); 
            f.setSize(200, 200); 
        } 
      
        // if button is pressed 
        public void actionPerformed(ActionEvent e) 
        { 
            try { 
                URI u = new URI("mailto:review-team@geeksforgeeks.org"); 
      
                Desktop d = Desktop.getDesktop(); 
                d.mail(u); 
            } 
            catch (Exception evt) { 
                JOptionPane.showMessageDialog(this, evt.getMessage()); 
            } 
        } 
    } 

    输出:

  • 打开文件的程序
    
    // Java Program to open a file 
    import java.awt.*; 
    import javax.swing.*; 
    import java.awt.event.*; 
    import java.io.*; 
    import java.net.*; 
    class desk extends JFrame implements ActionListener { 
        // frame 
        static JFrame f; 
           
        // Main Method 
        public static void main(String args[]) 
        { 
            desk d = new desk(); 
      
            // create a frame 
            f = new JFrame("desktop"); 
      
            // create a panel 
            JPanel p = new JPanel(); 
      
            // create a button 
            JButton b = new JButton("launch"); 
      
            // add Action Listener 
            b.addActionListener(d); 
      
            p.add(b); 
            f.add(p); 
            f.show(); 
            f.setSize(200, 200); 
        } 
      
        // if button is pressed 
        public void actionPerformed(ActionEvent e) 
        { 
            try { 
      
                // create a file 
                File u = new File("f:\\image.png"); 
      
                Desktop d = Desktop.getDesktop(); 
                d.open(u); 
            } 
            catch (Exception evt) { 
                JOptionPane.showMessageDialog(this, evt.getMessage()); 
            } 
        } 
    } 

    输出:

  • 打开文件进行编辑的程序
    
    // Java Program to open a file for editing 
    import java.awt.*; 
    import javax.swing.*; 
    import java.awt.event.*; 
    import java.io.*; 
    import java.net.*; 
      
    class desk extends JFrame implements ActionListener { 
      
        // frame 
        static JFrame f; 
      
        // Main Method 
        public static void main(String args[]) 
        { 
            desk d = new desk(); 
      
            // create a frame 
            f = new JFrame("desktop"); 
      
            // create a panel 
            JPanel p = new JPanel(); 
      
            // create a button 
            JButton b = new JButton("launch"); 
      
            // add Action Listener 
            b.addActionListener(d); 
      
            p.add(b); 
            f.add(p); 
            f.show(); 
            f.setSize(200, 200); 
        } 
      
        // if button is pressed 
        public void actionPerformed(ActionEvent e) 
        { 
            try { 
      
                // create a file 
                File u = new File("f:\\sample.txt"); 
      
                Desktop d = Desktop.getDesktop(); 
                d.edit(u); 
            } 
            catch (Exception evt) { 
                JOptionPane.showMessageDialog(this, evt.getMessage()); 
            } 
        } 
    } 

    输出:

  • 打开文件进行打印的程序
    
    // Java Program to open a file for printing 
    import java.awt.*; 
    import javax.swing.*; 
    import java.awt.event.*; 
    import java.io.*; 
    import java.net.*; 
      
    class desk extends JFrame implements ActionListener { 
      
        // frame 
        static JFrame f; 
      
        // Main Method 
        public static void main(String args[]) 
        { 
            desk d = new desk(); 
      
            // create a frame 
            f = new JFrame("desktop"); 
      
            // create a panel 
            JPanel p = new JPanel(); 
      
            // create a button 
            JButton b = new JButton("launch"); 
      
            // add Action Listener 
            b.addActionListener(d); 
      
            p.add(b); 
            f.add(p); 
            f.show(); 
            f.setSize(200, 200); 
        } 
      
        // if button is pressed 
        public void actionPerformed(ActionEvent e) 
        { 
            try { 
      
                // create a file 
                File u = new File("f:\\sample.txt"); 
      
                Desktop d = Desktop.getDesktop(); 
                d.print(u); 
            } 
            catch (Exception evt) { 
                JOptionPane.showMessageDialog(this, evt.getMessage()); 
            } 
        } 
    } 

    输出:

参考: https://docs.oracle.com/javase/7/docs/api/java/awt/Desktop.html



相关用法


注:本文由纯净天空筛选整理自andrew1234大神的英文原创作品 Java AWT | Desktop Class。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。