a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 264|回复: 2

[其他] JAVA技巧:java浏览器JEditorPane的使用

[复制链接]
发表于 2012-8-4 12:28:23 | 显示全部楼层 |阅读模式
import java.awt.*;
1 @2 P9 B, x* W6 ximport javax.swing.*;
: U3 y, w/ ^, x0 Jimport java.awt.event.*;
9 i+ V4 w! ?' ~7 V, kimport java.io.*;5 ]# O8 z# }4 H7 j8 u! a
import javax.swing.event.HyperlinkEvent;
8 M- b; V# a' U; \import javax.swing.event.HyperlinkListener;
$ S; f/ r3 M; `' |# npublic class testEditPane extends JFrame{! R6 C$ N8 ]0 p7 R
JEditorPane editorPane;. C( v* @$ c( o* ]
JLabel label;* X% }! Y0 G5 b
JTextField url;% H# m8 O0 T. _3 l! _
File file;
  ^: D! `. N6 r. m" pString str;
! S; l$ K6 g7 m0 r9 _; ^JButton btn;7 F5 _/ x: k" v2 Y% f# h
public testEditPane()
3 B. _  f1 {7 e) z  Y9 [% K: x{
0 i* Y# [8 J' v" {. Ythis.setTitle(“Java 浏览器”);: z: @+ c: J) D6 ^0 I+ ~8 L
editorPane=new JEditorPane();2 i. G7 a8 p0 v! K. E' P- \0 H
label=new JLabel(“URL”);1 g0 W( M/ p4 ^3 F: d  f
editorPane.setContentType(“text/html”);
% D. S5 ]: Q& `! R$ E' Hurl=new JTextField(30);
4 j) r( y+ F) e  `- C. k+ }url.addKeyListener(new KeyListener() {& a1 D. s4 Q2 h$ ^2 z; |
public void keyPressed(KeyEvent e) {8 C+ @# h6 l$ m) C
// TODO 自动生成体例存根$ P1 m" @& S& [' F9 Z* I
if(e.getKeyChar()==‘\n’)
' k) s9 K* ]1 F{6 b  m7 v" `/ J. x! w
if(url.getText().startsWith(“http://”))7 ?) d0 M/ t2 K! U. |9 U8 G9 \
{
0 F+ c/ H: \8 T+ F2 t# ]try7 }% X" X7 ~) ~7 s: r) X/ V' l

# T6 b3 _! v1 d& N' W{
回复

使用道具 举报

 楼主| 发表于 2012-8-4 12:28:24 | 显示全部楼层

JAVA技巧:java浏览器JEditorPane的使用

</p>editorPane.setPage(url.getText());
) K. n3 O, k  P. j) AeditorPane.setEditable(false);6 f6 v# S5 M  q% W  _/ h: ?% K3 h4 ?
}catch(Exception em)7 s- k5 \0 U: v8 N5 q

7 O2 a8 E: {7 \0 p; f0 X
# \8 m. a; s( ]" y# U{
8 b' \$ \% P3 `( E% Fem.printStackTrace();
0 h3 _6 }5 b; U8 k( E}
3 i7 R( q. x% Z+ t0 t3 d) f}0 w9 Z( h' c7 a  O' I" Q/ k6 _
else {
! ?; h. p6 e4 u5 v9 uurl.setText(“您输入的网址不正确!”);8 n+ p. f% H+ Y+ J$ o2 K
}: ?' Q) M. W' q! Y  B' F
}
* c7 j6 Y, K. P" d% e}+ D! [8 S, p  \% T: G" F
public void keyReleased(KeyEvent arg0) {8 }$ M% H- ^7 ^2 Z
// TODO 自动生成体例存根
. s1 I) S. |4 u+ v) M& B9 Y- ?}0 m$ u* J. U1 e9 [& G2 z: K; ]7 \
public void keyTyped(KeyEvent arg0) {
  ?5 A: u' i2 _! ^. {& e1 t// TODO 自动生成体例存根) q+ Z" L* I' |, D& B
}});
7 B- A+ D) i% M! B# x* Rbtn=new JButton(“Go”);
6 q, l4 A7 a7 A. S" Vbtn.addActionListener(new ActionListener() {
1 c3 x: H5 E2 L7 xpublic void actionPerformed(ActionEvent e) {
; E' V6 j! p5 q' V$ F" `// TODO 自动生成体例存根6 g' G: b4 `) ?5 S: W% f
try
* ?- a- a2 E/ t- _- R{( f# E8 a& W+ w- j0 Y/ A- \6 [8 x! `
editorPane.setPage(url.getText());5 f' V" q7 [- s8 _; A+ A
editorPane.setEditable(false);
; _, E5 U3 z7 e, o# e}catch(Exception em)) ?4 I' X8 ]6 f9 v7 h3 p* m& u
{" i$ m' k3 \- {( R; u4 v1 ]8 f
em.printStackTrace();
$ t4 W4 c5 }9 E, c) a' b/ l}
1 o0 s; A6 p3 |; t& L% y: S}});
% ^& x' t8 W, @: z: o& e) F9 ZJPanel pnl=new JPanel();
, k2 v) d) I& }; x  F. z" f; F, V$ p+ `pnl.add(label,BorderLayout.WEST);5 c4 s# o8 Z! Z9 o" X
pnl.add(url,BorderLayout.CENTER);
/ v- P+ v5 y0 h! J  |pnl.add(btn,BorderLayout.EAST);) V+ }5 Q/ l# f2 j
this.getContentPane().add(pnl,BorderLayout.NORTH);
. z9 n& B+ a# z9 u- beditorPane.addHyperlinkListener(new HyperlinkListener() {
" K0 K6 ^% `7 V, Zpublic void hyperlinkUpdate(HyperlinkEvent e) {  Y! i1 }$ m- ]& l% W  k
// TODO 自动生成体例存根6 P3 j2 V* B+ L1 F) F6 c
2 H& a' H6 K0 }
try {
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-8-4 12:28:25 | 显示全部楼层

JAVA技巧:java浏览器JEditorPane的使用

</p>if ( e.getEventType() == HyperlinkEvent.EventType.ACTIVATED
5 n6 g. M& T# W6 J5 L& Y) _4 v( t4 N4 K6 {# n
editorPane.setPage(e.getURL());, x/ j- F8 s* Y, r) u6 G
} catch (Exception ex) {* O/ G. Q! j4 l& W; U
5 q; Y/ v! ]# k% ^" G5 j* G

/ G/ \8 I$ h, B  e" i  \* R0 Sex.printStackTrace(System.err);& y2 O4 M) y# M) p3 _# H. g
}+ j2 n* w" P# K& O/ O
}8 ?0 g9 J' ]" g" D
});
+ u$ I% \' L% V) Ethis.setSize(500,500);; Z' z) I1 H- A: f7 ]9 T4 ~
JScrollPane scrollPane=new JScrollPane();6 ~5 E( ~( f$ U. {  y
scrollPane.setViewportView(editorPane);. O5 O0 |1 l) W' i& L: W- t% A
this.getContentPane().add(scrollPane,BorderLayout.CENTER);+ C7 X5 V! U; d" U6 a4 T  p- |
this.addWindowListener(new WindowAdapter() {4 j( D9 v4 l& c8 [
public void windowClosing(WindowEvent e) {
4 w, X3 i. z( o" ]System.exit(0); }});
& d) o( m( A# E6 R) Lthis.setVisible(true);: v% g! }+ E, L! H1 d) J$ ?, @# C
}
5 p; }4 G* W5 V. w3 p/**
9 R! L% [* R9 ^/ d* @param args8 G2 Y% B6 a+ s# I
*/
- y: ~" \! {. ?7 W3 Bpublic static void main(String[] args) {
  G0 o! ^7 h" e8 V+ s! q// TODO 自动生成体例存根
' h; d* C" R' Y2 r, [9 h- Hnew testEditPane();
) M$ `% t4 ?# u! d! Z0 `8 t  X0 ]' K}4 N0 x, [1 i6 N9 L6 H
}
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-6-17 05:24 , Processed in 0.219648 second(s), 26 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表