两段代码,实现简单的网页加载器,比较粗糙,大神勿喷~

(注释还没有加完,今晚早休息了,明天补上:-D)

 

import javax.swing.JFrame;
/*
 * 主方法仅用来创建对象
 */
public class ReadWebMain {
	public static void main(String[] args){
		ReadWeb file = new ReadWeb();
		file.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}
}

 

 

import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;

import javax.swing.JEditorPane;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.event.HyperlinkEvent;
import javax.swing.event.HyperlinkListener;
/*
 * 这个类用来实现浏览器里面几个主要的功能与生成界面
 */
public class ReadWeb extends JFrame{//继承自框架类
	private JTextField addressBar;//声明一个地址栏,私有属性
	private JEditorPane view;//声明一块显示区域
	
	public ReadWeb(){
		super("简单的网页显示");//框架的标题栏内容
		
		addressBar = new JTextField("http://");//地址栏加入开头文本
		addressBar.addActionListener(//添加监听器
				new ActionListener(){
					public void actionPerformed(ActionEvent event){
						//当系统监听到地址栏的动作时,做出下面的反应(loadWeb方法)
						loadWeb(event.getActionCommand());
					}
				});
		add(addressBar, BorderLayout.NORTH);//将地址栏加到面板的框架的北部
		
		view = new JEditorPane();
		view.setEditable(false);
		view.addHyperlinkListener(
				new HyperlinkListener(){
					public void hyperlinkUpdate(HyperlinkEvent event){
						if(event.getEventType()==HyperlinkEvent.EventType.ACTIVATED){
							loadWeb(event.getURL().toString());
						}
					}
				});
		add(new JScrollPane(view),BorderLayout.CENTER);
		setSize(500,300);
		setVisible(true);
	}
	
	private void loadWeb(String userText){
		try {
			view.setPage(userText);
			addressBar.setText(userText);
		} catch (IOException e) {
			System.out.println("Invalid URL!");
		}		
	}	
}