30-08-2011, 11:52 AM
Code:
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import java.net.*;
import java.io.*;
public class browser extends JFrame implements HyperlinkListener,ActionListener
{
public static void main(String args[])
{
if(args.length==0)
new browser("file:\\e:text.html");
else
new browser(args[0]);
}
private JButton home;
private JTextField urlfield;
private JEditorPane htmlpane;
private String initialurl;
addWindowListener(new ExitListener());
WindowUtilities.setNativeLookAndFeel();
JPanel topPanel = new JPanel();
topPanel.setBackground(color.lightGray);
home = new JButton("click");
urlfield=new JTextField(30);
urlfield.setText(intialurl);
home.addActionListener(this);
urlfield.addActionListener(this);
JLabel urllabel=new JLabel("url");
topPanel.add(home);
topPanel.add(urlfield);
getContentPane().add(topPanel,Borderlayout.NORTH);
try
{
htmlpane = new JEditorPane(initialurl);
htmlpane.setEditable(false);
htmlpane.addHyperlinkListener(this);
JScrollPane scrollpane=new JScrollPane(htmlpane);
getContentPane().add(htmlpanel.Borderlayout.CENTER);
}
catch(IOException e)
{
warnuser("can't build htmlpane for" + initialurl + ":"+ e);
}
Dimension Screensize=getToolkit().getScreensize();
int width=screensize.width*8/10;
int height=screensize.height*8/100;
setBounds(width/8,height/8,width,height);
setVisible(true);
public void actionPerformed(ActionEvent ae)
{
String url;
if(ae.getSource()==urlfield)
url=urlfield.getText();
else
url=initialurl;
try
{
htmlpane.setPage(new URL(url));
urlfield.setText(url);
}
catch(IOException e)
{
warnuser("cant't build htmlpane for" +initialurl + ":" + e);
}
public void hyperlink update(HyperlinkEvent event)
{
if(event.getEventType()==Hyperlink.EventType.ACTIVATED)
{
try
{
htmlpane.setPage(event.getURL());
urlfield.setText(event.getURL();
}
catch(IOException e)
{
warnuser("cant't build htmlpane for" +initialurl+ ":" + e);
}
public class ExitListener extends WindowAdapter
{
public void WindowClosing(WindowEvent e)
{
System.exit(0);
}
}
private void warnuser(String msg)
{
JOptionpane.showMessageDialog(this,msg,"error",JOptionPane.Error_Message);
class WindowUtilities
{
public static void setNativeLookAndFeel()
{
try
{
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeel class native());
}
catch(Exception e)
{
}
}