欢迎来到天天文库
浏览记录
ID:8972090
大小:76.00 KB
页数:7页
时间:2018-04-13
《java网页浏览器组件介绍(全的4种)》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、前言在使用Java开发客户端程序时,有时会需要在界面中使用网页浏览器组件,用来显示一段HTML或者一个特定的网址。本文将介绍在界面中使用浏览器组件的四种方法,给出示例的代码,并且分析每种方法的优点与不足,便于Java开发者在实际开发过程中根据自己的需要来选择。回页首JDK中的实现-JEditorPaneSwing是一个用于开发Java应用程序图形化用户界面的工具包,它是以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格,而且它是轻量级(light-weight)组件,没有本地代码,不依赖于操作系统的支持
2、,这是它与AWT组件的最大的区别。在Swing中,有一个组件是JEditorPane,它是一个可以编辑任意内容的文本组件。这个类使用了EditorKit来实现其操作,对于给予它的各种内容,它能有效地将其类型变换为适当的文本编辑器种类。该编辑器在任意给定时间的内容类型由当前已经安装的EditorKit来确定。默认情况下,JEditorPane支持以下的内容类型:·text/plain纯文本的内容,在此情况下使用的工具包是DefaultEditorKit的扩展,可生成有换行的纯文本视图。·text/htmlHTML文本,在此情况下使
3、用的工具包是javax.swing.text.html.HTMLEditorKit,它支持HTML3.2。·text/rtfRTF文本,在此情况下使用的工具包是类javax.swing.text.rtf.RTFEditorKit,它提供了对多样化文本格式(RichTextFormat)的有限支持。JEditorPane的常用方法JEditorPane()创建一个新的JEditorPane对象JEditorPane(Stringurl)根据包含URL规范的字符串创建一个JEditorPaneJEditorPane(Stringty
4、pe,Stringtext)创建一个已初始化为给定文件的JEdiorPaneJEditorPane(URLinitialPage)根据输入指定的URL来创建一个JEditorPanescrollToReference(Stringreference)将视图滚动到给定的参考位置(也就是正在显示的URL的URL.getRef方法所返回的值)setContentType(Stringtype)设置此编辑器所处理的内容类型setEditorKit(EditorKitkit)设置当前为处理内容而安装的工具包setPage(Stringur
5、l)设置当前要显示的URL,参数是一个StringsetPage(URLpage)设置当前要显示的URL,参数是一个java.net.URL对象setText(Stringt)将此TextComponent的文本设置为指定内容,预期以此编辑器的内容类型格式提供该内容JEditorPane显示网页要使用JEditorPane来显示HTML,需要完成以下几个步骤:·创建一个JEditorPane对象privateJEditorPanejep=newJEditorPane();·设置JEditorPane显示的内容为text/html
6、jep.setContentType("text/html");·设置它不可编辑jep.setEditable(false);·处理超链接事件jep.addHyperlinkListener(this);JEditorPane需要注册一个HyperlinkListener对象来处理超链接事件,这个接口定义了一个方法hyperlinkUpdate(HyperlinkEvente),示例代码如下:publicvoidhyperlinkUpdate(HyperlinkEventevent){if(event.getEventType(
7、)==HyperlinkEvent.EventType.ACTIVATED){try{jep.setPage(event.getURL());}catch(IOExceptionioe){ioe.printStackTrace();}}}完整的代码可以在本文中下载到。在这个例子中,实现了一个HyperlinkListener接口,在方法实现中,if(event.getEventType()==HyperlinkEvent.EventType.ACTIVATED)这行代码表示首先判断HyperlinkListener的类型,在这里
8、只处理事件类型为HyperlinkEvent.EventType.ACTIVATED的事件(即点击了某个超链接的事件),然后通过调用HyperlinkEvent的getURL()方法来获取超链接的URL地址。最后通过调用jep.setPage(event.get
此文档下载收益归作者所有