文档章节

Java实现简单的网页浏览器

闻术苑
 闻术苑
发布于 2012/11/25 23:32
字数 288
阅读 367
收藏 6

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

(注释还没有加完,今晚早休息了,明天补上:-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!");
		}		
	}	
}

 

© 著作权归作者所有

共有 人打赏支持
闻术苑
粉丝 57
博文 144
码字总数 60009
作品 0
济南
产品经理
如何以Java实现网页截图技术

今天看到某网友关于“如何以Java实现网页截图技术”的咨询帖,由于出现该咨询的地点非常不适合较长回复,故以博文形式回答。 事实上,如果您想以Java实现网页截图,也就是“输入一段网址,几...

Carl_
2015/03/03
0
7
在Android上实现Java和Js交互

其实webview加载资源的速度并不慢,但是如果资源多了,当然就很慢。图片、 css 、 js 、 html 这些资源每个大概需要 10-200ms ,一般都是 30ms 就 ok 了。不过webview是必须等到全部资源都完...

zhiweiofli
2013/06/20
0
0
Java常见问题集锦(来自Sun中国官方站)

发表日期:2003年11月28日 已经有91位读者读过此文 原文链接:http://blog.csdn.net/jaminwm/article/details/90376

晨曦之光
2012/03/09
0
0
利用java实现浏览器功能 jdic

使用VC,VB或者C#的开发者们对于在程序里面嵌入一个网页来说,那真是小事一桩。但是在JAVA里面,却几乎是不可能实现的任务。JEditorPane虽然说可以打开网页,但是它那解析速度以及解析质量,...

xiaomin0322
06/12
0
0
1.1 java语言的发展简史

java语言的诞生具有一定的戏剧性,它并不是经过精心策划、制作,最后产生的划时代产品,从某个角度耐看,java语言的诞生完全是一种误会。 1900年年末,Sun公司预料嵌入式系统将在未来家用电器...

Gooiem
2015/08/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

kernel version does not match DSO version

错误信息: kernel version 384.11 does not match DSO version 384.130.0 原因是: cuda driver版本太低,不匹配DSO 简单有效的修复方法,升级nvidia driver, 步骤如下: 1. google seach ...

刘小米
今天
0
0
maven坐标和依赖

一、maven坐标详解 <groupId>com.fgt.club</groupId><artifactId>club-common-service-facade</artifactId><version>3.0.0</version><packaging>jar</packaging> maven的坐标元素说......

老韭菜
今天
1
0
springmvc-servlet.xml配置表功能解释

问:<?xml version="1.0" encoding="UTF-8" ?> 答: xml version="1.0"表示是此xml文件的版本是1.0 encoding="UTF-8"表示此文件的编码方式是UTF-8 问:<!DOCTYPE beans PUBLIC "-//SPRING//......

隐士族隐逸
今天
1
0
基于TP5的微信的公众号获取登录用户信息

之前讲过微信的公众号自动登录的菜单配置,这次记录一下在TP5项目中获取自动登录的用户信息并存到数据库的操作 基本的流程为:微信设置自动登录的菜单—>访问的URL指定的函数里获取用户信息—...

月夜中徘徊
今天
0
0
youTrack

package jetbrains.teamsys.license.runtime; 计算lis package jetbrains.ring.license.reader; 验证lis 安装后先不要生成lis,要把相关文件进行替换 ring-license-checker-1.0.41.jar char......

max佩恩
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部