java做个查询窗体_如何用JAVA做一个能显示百度网页的窗体

这是一个Java程序,创建了一个简单的网页浏览器窗口,包含地址栏和显示网页内容的JEditorPane。用户可以输入URL或者通过按钮进行页面跳转,程序会自动检查URL是否以'http://'开头并添加。如果URL无效,程序会显示错误提示。
摘要由CSDN通过智能技术生成

展开全部

/*

**网页e68a8462616964757a686964616f31333330323237浏览器主程序

**WebBrowser.java

*/

import java.awt.BorderLayout;

import java.awt.Container;

import java.awt.Dimension;

import java.awt.Toolkit;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.Box;

import javax.swing.JButton;

import javax.swing.JEditorPane;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JScrollPane;

import javax.swing.JTextField;

import javax.swing.JToolBar;

import javax.swing.JWindow;

import javax.swing.event.HyperlinkEvent;

import javax.swing.event.HyperlinkListener;

public class WebBrowser extends JFrame implements HyperlinkListener,ActionListener{

//建立工具栏用来显示地址栏

JToolBar bar=new JToolBar ();

//建立网页显示界面

JTextField jurl = new JTextField (60); //地址栏

JEditorPane jEditorPane1 = new JEditorPane ();//网页框

JScrollPane scrollPane = new JScrollPane (jEditorPane1); //滚动条

JWindow window = new JWindow (WebBrowser.this); //使用指定的所有者框架创建窗口

Toolkit toolkit = Toolkit.getDefaultToolkit();//获取默认工具包

//建立工具栏中的按钮组件

JLabel label=new JLabel ("地址");

JButton button=new JButton ("转向");

Box adress=Box.createHorizontalBox (); //创建一个从左到右显示其组件

public WebBrowser(){

setTitle ("网页浏览器");

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

//为jEditorPane1添加事件侦听

jEditorPane1.addHyperlinkListener (this);

Container contentPane=getContentPane (); //实例化容器

//设置大小

scrollPane.setPreferredSize(new Dimension(100,500));

contentPane.add (scrollPane, BorderLayout.SOUTH);

contentPane.add (bar,BorderLayout.CENTER);

adress.add (label);

adress.add (jurl);

adress.add (button);

bar.add (adress);

button.addActionListener(this);

jurl.addActionListener(this);

}

/**

**实现监听器接口的actionPerformed函数

*/

public void actionPerformed(ActionEvent e) {

String url = "";

//点击转向按钮

if (e.getSource() == button){

//获得地址栏的内容

url=jurl.getText ();

//url不为“”,并且以“http://”开头

if(url.length ()>0&&url.startsWith ("http://")){

try {

//JEditorPane组件显示url的内容链接

jEditorPane1.setPage (url);

jEditorPane1.setEditable(false); //add by copy editor :)

//重新布局

jEditorPane1.revalidate ();

}

catch(Exception ex) {

//如果链接显示失败,则弹出选择对话框“无法打开该搜索页”

JOptionPane.showMessageDialog (WebBrowser.this,"无法打开该搜索页","网页浏览器",JOptionPane.ERROR_MESSAGE);

}

}

//url不为“”,并且不以“http://”开头

else if(url.length ()>0&&!url.startsWith ("http://")) {

//在url前面添加“http://”

url="http://"+url;

try {

jEditorPane1.setPage (url );

jEditorPane1.setEditable(false); //add by copy editor :)

jEditorPane1.revalidate ();

}

catch(Exception ex) {

JOptionPane.showMessageDialog (WebBrowser.this,"无法打开该搜索页","网页浏览器",JOptionPane.ERROR_MESSAGE);

}

}

//没有输入url,即url为空

else if(url.length ()==0){

JOptionPane.showMessageDialog (WebBrowser.this,"请输入链接地址","网页浏览器",JOptionPane.ERROR_MESSAGE);

}

}

//输入地址后点击回车

else if (e.getSource() == jurl){

url=jurl.getText ();

if(url.length ()>0&&url.startsWith ("http://")) {

try {

jEditorPane1.setPage (url);

jEditorPane1.setEditable(false); //add by copy editor :)

jEditorPane1.revalidate ();

jurl.setMaximumSize (jurl.getPreferredSize ());

}

catch(Exception ex) {

JOptionPane.showMessageDialog (WebBrowser.this,"无法打开该搜索页","网页浏览器",JOptionPane.ERROR_MESSAGE);

}

}

else if(url.length ()>0&&!url.startsWith ("http://")) {

url="http://"+url;

try {

jEditorPane1.setPage (url );

jEditorPane1.setEditable(false); //add by copy editor :)

jEditorPane1.revalidate ();

}

catch(Exception ex) {

JOptionPane.showMessageDialog (WebBrowser.this,"无法打开该搜索页","网页浏览器",JOptionPane.ERROR_MESSAGE);

}

}

else if(url.length ()==0){

JOptionPane.showMessageDialog (WebBrowser.this,"请输入链接地址","网页浏览器",JOptionPane.ERROR_MESSAGE);

}

}

}

/**

**实现监听器接口的hyperlinkUpdate函数

*/

public void hyperlinkUpdate (HyperlinkEvent e) {

try {

if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED)

jEditorPane1.setPage(e.getURL());

} catch (Exception ex) {

ex.printStackTrace(System.err);//ex.printStackTrace打印出异常,但是它还将显示出更深的调用信息。

}

}

/*生成一个IE对象*/

public static void main (String [] args){

WebBrowser webBrowser = new WebBrowser ();

webBrowser.pack();

webBrowser.setVisible(true);

}

}

本回答被网友采纳

2Q==

已赞过

已踩过<

你对这个回答的评价是?

评论

收起

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值