sample27_4.java
来自「Java SE 6.0前27-31章示的示例代码,简单易学」· Java 代码 · 共 123 行
JAVA
123 行
package wyf.jc;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.net.*;
//定义该类继承自JFrame
public class Sample27_4 extends JFrame implements ActionListener
{
//创建按钮数组
JButton[] jb={new JButton("写邮件"),new JButton("打开网站"),
new JButton("打开本地文件")};
//创建用于输入URI的文本框数组
JTextField[] jtf={new JTextField(),new JTextField()};
//创建标签数组
JLabel[] jl={new JLabel("邮件地址:"),new JLabel("网站地址:")};
//创建文件选择器对象
JFileChooser jfc=new JFileChooser();
//声明Desktop类的引用d
Desktop d;
public Sample27_4()
{
//设置窗体的布局管理器
this.setLayout(null);
//循环对标签、文本框与按钮进行处理
for(int i=0;i<jl.length;i++)
{
//设置标签、文本框与按钮的大小位置
jl[i].setBounds(10,10+i*50,120,26);
jtf[i].setBounds(100,10+i*50,150,26);
jb[i].setBounds(260,10+i*50,80,26);
//将标签、文本框与按钮添加到窗体中
this.add(jl[i]);
this.add(jtf[i]);
this.add(jb[i]);
//设置按钮四周的边框留白
jb[i].setMargin(new Insets(0,0,0,0));
//为按钮注册动作事件监听器
jb[i].addActionListener(this);
}
//设置打开本地文件按钮的大小位置、边框留白,并将其添加到窗体中
jb[2].setBounds(120,110,100,26);
jb[2].setMargin(new Insets(0,0,0,0));
this.add(jb[2]);
//为打开本地文件按钮注册动作事件监听器
jb[2].addActionListener(this);
//测试当前平台是否支持Desktop
if(Desktop.isDesktopSupported())
{//获取Desktop对象
d=Desktop.getDesktop();
}
//设置窗口的标题、大小位置以及可见性
this.setTitle("Desktop类示例");
this.setResizable(false);
this.setBounds(100,100,350,180);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
//实现ActionListener接口中的方法
public void actionPerformed(ActionEvent ae)
{
if(ae.getSource()==jb[0])
{//按下写邮件按扭
//获取输入的邮件地址
String mailTo=jtf[0].getText().trim();
try
{
if(mailTo.length()>0)
{//若有输入的地址则打开默认邮件客户端并填充邮件地址
d.mail(new URI("mailto:"+mailTo));
}
else
{//若没有输入地址则打开空白默认邮件客户端
d.mail();
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
else if(ae.getSource()==jb[1])
{//按下打开网站按扭
//获取用户输入的网址
String uri=jtf[1].getText().trim();
try
{
if(uri.length()>0)
{//若有输入的网址则使用默认的浏览器浏览给出的网址
d.browse(new URI(uri));
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
else if(ae.getSource()==jb[2])
{//按下打开本地文件按扭
//弹出文件选择器
int c=jfc.showDialog(this,"请选择文件");
if(c==JFileChooser.OPEN_DIALOG)
{
try
{//获取文件所在的目录路径
File f=jfc.getSelectedFile();
//使用当前平台默认的关联程序打开文件
d.open(f);
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
}
public static void main(String[] args)
{
//创建Sample27_4窗体对象
new Sample27_4();
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?