`
penghao122
  • 浏览: 362763 次
  • 性别: Icon_minigender_1
  • 来自: 广东珠海
社区版块
存档分类
最新评论

写个游览器

    博客分类:
  • java
阅读更多
package com.t48.next.partice;

import java.io.IOException;
import java.net.URL;
import javax.swing.*;
import javax.swing.text.Document;
import javax.swing.text.JTextComponent;
import java.awt.*;
import java.awt.event.*;
import javax.swing.event.*;
public class HtmlBrowser extends JFrame {
JPanel contentPane;                // 包含整个框架的容器
BorderLayout borderLayoutAll = new BorderLayout();
JLabel jLabelPrompt = new JLabel();    // 状态提示框
JPanel jPanelMain = new JPanel();
BorderLayout borderLayoutMain = new BorderLayout();
JTextField textFieldURL = new JTextField();        // URL输入框
JEditorPane jEditorPane = new JEditorPane();      // 显示网页内容的容器

public HtmlBrowser() {  // 定义构造方法
try {
jbInit();                              // 初始化并显示界面
}
catch(Exception e) {
e.printStackTrace();
}
}

private void jbInit() throws Exception  {        // 界面初始化
contentPane = (JPanel)getContentPane();
contentPane.setLayout(borderLayoutAll);
jPanelMain.setLayout(borderLayoutMain);
jLabelPrompt.setText("请输入URL");
textFieldURL.setText(""); // 清空文本框
textFieldURL.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(ActionEvent e) {
textFieldURL_actionPerformed(e); }
});
jEditorPane.setEditable(false); // 设置不可编辑
jEditorPane.addHyperlinkListener(new javax.swing.event.HyperlinkListener() {
public void hyperlinkUpdate(HyperlinkEvent e) {
jEditorPane_hyperlinkUpdate(e);
        }
});
JScrollPane scrollPane = new JScrollPane();
scrollPane.getViewport().add(jEditorPane);
jPanelMain.add(textFieldURL, "North");
jPanelMain.add(scrollPane, "Center");
contentPane.add(jLabelPrompt, "North");
contentPane.add(jPanelMain, "Center");
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
this.setSize(new Dimension(600, 500));
this.setTitle("迷你IE ");
this.setVisible(true);
}

void textFieldURL_actionPerformed(ActionEvent e) {       // 输入地址后响应回车
try {
jEditorPane.setPage(textFieldURL.getText());           // 显示URL
}
    catch(IOException ex) {
JOptionPane msg = new JOptionPane();
JOptionPane.showMessageDialog(this, "URL地址不正确:"+textFieldURL.getText(), "输入不正确!", 0);
    }
}

void jEditorPane_hyperlinkUpdate(HyperlinkEvent e) {        // 响应页面打开超链接消息
if(e.getEventType() == javax.swing.event.HyperlinkEvent.EventType.ACTIVATED) {
try {
URL url = e.getURL();                       // 从消息中得到URL
jEditorPane.setPage(url);                            // 显示页面内容
textFieldURL.setText(url.toString());                   // 显示URL
}
catch(IOException io){
JOptionPane msg = new JOptionPane();
JOptionPane.showMessageDialog(this, "打开该链接失败!", "输入不正确!", 0);
}
}
}

protected void processWindowEvent(WindowEvent e) { //处理窗体事件
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);                            // 关闭
}
}

public static void main(String[] args) { // Main函数
    new HtmlBrowser();
}
}
分享到:
评论

相关推荐

    自己用vb写浏览器(.net 平台开发)

    自己做的浏览器 自己用vb写浏览器(.net 平台开发)

    再发一个用VB写的浏览器

    【标题】"再发一个用VB写的浏览器"揭示了这个项目是使用Visual Basic(VB)编程语言开发的一个自定义浏览器。Visual Basic是Microsoft推出的一种面向对象的编程工具,以其直观的编程界面和易于学习的特点而受到初学...

    易语言写的浏览器源码

    个人写的易语言写的浏览器源码,想学易语言的朋友可以参考一下,写得不是很好,不要笑话哟!

    自己写的浏览器

    自己写的浏览器

    我们自己写的浏览器源代码

    浏览器源代码是一个复杂而庞大的项目,它涉及到网络通信、渲染引擎、用户界面、JavaScript引擎等多个核心组件。在C++这个强大的编程语言下构建一个浏览器,需要深入理解许多底层原理和技术。下面将详细讨论这些关键...

    java 制作的一个简单的浏览器

    【描述】:本文将深入探讨如何使用Java编程语言开发一个基础的Web浏览器。这个浏览器能够接收用户在地址栏输入的正确URL,并加载显示对应的网页内容。我们将分析实现这一功能所需的关键技术和步骤。 【正文】: 1....

    Qt写的浏览器

    "Qt写的浏览器"项目是利用Qt库创建的一个简单的浏览器应用,旨在帮助初学者快速理解和掌握Qt的相关知识。通过这个项目,我们可以深入探讨Qt在构建浏览器时所涉及的关键技术和概念。 1. **Qt框架基础** - **...

    用java写的一个简单web浏览器

    本项目“用Java写的一个简单Web浏览器”是一个基础的实践示例,旨在展示如何利用Java技术来实现一个基本的网页浏览功能。下面我们将详细探讨这个项目的相关知识点。 首先,Java Web开发的基础是Java标准版(Java SE...

    周期测试网站是否正常,并刷新浏览器[批处理程序]

    这是一个bat程序,内含wget.exe wget是一个绿色软件,可以获取网页html的,跟...我当初想用cs写个浏览器,因为.net送了个貌似很美好的webBrowser控件,但该控制对第3方插件的支持度很差。所以决定还是写个bat应付下。

    用java写的浏览器,类似于Internet explorer 7

    本项目标题提到的是一个使用Java编写的浏览器,其设计目标是模仿早期的Internet Explorer 7(IE7)的功能。下面我们将详细探讨这个Java浏览器的可能实现方式、涉及的技术和相关知识点。 首先,Java浏览器的核心是...

    用java编写的简易浏览器

    【标题】"用Java编写的简易浏览器"是一个项目,它展示了如何使用Java编程语言来创建一个基础的网络浏览应用程序。这个简易浏览器旨在提供基本的网页浏览功能,可能包括输入URL、加载网页、前进和后退等操作。在Java...

    C#写的简单的浏览器程序

    标题中的"C#写的简单的浏览器程序"表明这是一个使用C#编程语言开发的简易浏览器应用。C#是Microsoft开发的一种面向对象的编程语言,常用于构建Windows桌面应用、游戏以及Web服务等。初学者选择C#来编写浏览器程序,...

    c#写的浏览器可以看源代码

    c#写的浏览器可以看源代码 public void NewNullTabPages() //新建空白页面的方法 { CustomTabpage tabpage = new CustomTabpage(this); this.urlBox.Text = "about:blank"; this.tabControl1.TabPages.Add...

    UIWebView应用——自己动手写IOS浏览器

    这篇博客“UIWebView应用——自己动手写IOS浏览器”将引导开发者创建一个简单的内置浏览器,它允许用户浏览网页、进行页面导航。UIWebView不仅能够加载HTML内容,还可以处理JavaScript与Objective-C的交互,使得APP...

    一个浏览器源代码,用delphi写的

    【标题】"一个浏览器源代码,用delphi写的"揭示了这个项目是使用Delphi编程语言构建的一个浏览器软件。Delphi是一种基于Object Pascal的集成开发环境(IDE),它以其高效性和强大的Windows应用程序开发能力而闻名。 ...

    一个简单的java浏览器(B.Y 浏览器)

    这是我参照网上的一些资料自己写的一个简单浏览器 在所给的源码中附上了一张效果图01.jpg 这个浏览器可谓是简单级别的了/呵呵...献丑了 ... 源码中有些功能没有实现如:保存标签.. 不过有心得朋友可以拿下源码,进行...

    一个Java写的Web浏览器,

    支持HTML和HTM页面的显示. 使用了JEditorPane组件 * 运行时仍有异常,需要调试 由于没有太多时间再去调试,本人在此倒希望各位大虾调试通过后通知我一声 :) 如果有人帮忙条通,我下次继续上传 :)

    QT写的多标签浏览器

    QT写的多标签浏览器是一种基于QT框架开发的网络浏览器,它具备了现代浏览器的基本功能,并且在设计时特别强调了对Flash的支持,使得用户能够在浏览网页的同时享受在线视频和音乐服务。QT是一个强大的跨平台应用程序...

    C++ 自编写浏览器

    一个标准的浏览器通常包括以下几个核心组件: 1. **渲染引擎(Rendering Engine)**:负责显示请求的内容,如HTML、CSS、JavaScript等。它解析网页内容并将其转化为用户可交互的视图。 2. **网络模块(Network ...

    java写的网络浏览器

    6. **多线程**:浏览器需要处理多个并发任务,如加载多个页面、执行脚本等。Java的多线程支持使得开发者能够轻松地创建和管理这些并发任务。 7. **缓存和历史记录**:为了提高性能和用户体验,浏览器需要实现缓存...

Global site tag (gtag.js) - Google Analytics