On clicking any hyperlink of the webpage the new URL is not displayed in the address bar. Please help me regarding the history button if possible
CODE
import javax.swing.*;
import java.awt.*;
import java.util.*;
import javax.swing.JFrame;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JEditorPane;
import javax.swing.JLabel;
import java.io.IOException;
import java.awt.GridBagLayout;
import java.awt.GridBagConstraints;
import java.awt.BorderLayout;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.UIManager;
import javax.swing.JEditorPane;
import javax.swing.event.HyperlinkListener;
import javax.swing.event.HyperlinkEvent;
import javax.swing.JOptionPane;
public class BrowserNew implements ActionListener //Main Executable class handling menu(LN:60,61) and checkitout button(LN:200)
{
//MENU BAR & MENU & MENUITEM
MenuBar mb;
Menu file;
MenuItem n,e;
//LINK OR WEB ADDRESS OR URL(uniform resource locator) FEEDER
static JTextField t1;
JLabel l1; //Address Label
JButton b1; //Check It Out Button
JPanel p; //grouping the l1,t1,b1
GridBagLayout gbl; //Layout Manager of Panel
GridBagConstraints gbc;
static JFrame frame;
JScrollPane scrollPane;
static JEditorPane jep;
Stack urlStack = new Stack();
static String initialPage;
JToolBar toolBar;
public BrowserNew()
{
JFrame.setDefaultLookAndFeelDecorated(true);
try
{
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch(Exception e)
{
e.printStackTrace();
}
frame=new JFrame("Simple Web Browser");
mb=new MenuBar();
file=new Menu("File");
n=new MenuItem("New");
e=new MenuItem("Exit");
file.add(n);
file.add(e);
mb.add(file);
frame.setMenuBar(mb);
n.addActionListener(this);
e.addActionListener(this);
gbl=new GridBagLayout();
gbc=new GridBagConstraints();
toolBar = new JToolBar();
ImageIcon iconBack = new ImageIcon("back.gif ");
Action actionBack = new AbstractAction("Back", iconBack)
{
public void actionPerformed(ActionEvent e)
{
System.out.println("back action");
if(urlStack.size()<=1)
return;
urlStack.pop();
String urlString = (String)urlStack.peek();
t1.setText(urlString);
initialPage=t1.getText();
locate();
}
};
ImageIcon iconForward = new ImageIcon("fwd.gif");
Action actionForward = new AbstractAction("Forward", iconForward)
{
public void actionPerformed(ActionEvent e)
{
System.out.println("Forward action");
}
};
ImageIcon iconSearch = new ImageIcon("b_search.gif");
Action actionSearch = new AbstractAction("Search", iconSearch)
{
public void actionPerformed(ActionEvent e)
{
System.out.println("Search action");
}
};
ImageIcon iconMail = new ImageIcon("mail.gif ");
Action actionMail = new AbstractAction("Mail", iconMail)
{
public void actionPerformed(ActionEvent e)
{
System.out.println("mail action");
}
};
ImageIcon iconActionCancelled= new ImageIcon("errorl.gif");
Action actionActionCancelled = new AbstractAction("Action Cancelled", iconActionCancelled)
{
public void actionPerformed(ActionEvent e)
{
System.out.println("Action Cancelled action");
}
};
ImageIcon iconRefresh= new ImageIcon("FOXSM.GIF");
Action actionRefresh = new AbstractAction("Refresh", iconRefresh)
{
public void actionPerformed(ActionEvent e)
{
System.out.println("Refresh action");
}
};
ImageIcon iconHome= new ImageIcon("847572136_b1fd8c54ff_s.jpg");
Action actionHome = new AbstractAction("Home", iconHome)
{
public void actionPerformed(ActionEvent e)
{
System.out.println("Home action");
}
};
ImageIcon iconFavorites= new ImageIcon("dataFavoritesLogo[1].gif");
Action actionFavorites = new AbstractAction("Favorites", iconFavorites)
{
public void actionPerformed(ActionEvent e)
{
System.out.println("Favorites action");
}
};
ImageIcon iconHistory= new ImageIcon("history_logo_right_top[1].jpg");
Action actionHistory= new AbstractAction("History", iconHistory)
{
public void actionPerformed(ActionEvent e)
{
System.out.println("History action");
}
};
ImageIcon iconMessenger= new ImageIcon("msn-messenger-logo[1].gif");
Action actionMessenger= new AbstractAction("Messenger", iconMessenger)
{
public void actionPerformed(ActionEvent e)
{
System.out.println("Messenger action");
}
};
ImageIcon iconPrint= new ImageIcon("printer.gif");
Action actionPrint= new AbstractAction("Print", iconPrint)
{
public void actionPerformed(ActionEvent e)
{
System.out.println("Print action");
}
};
ImageIcon iconResearch= new ImageIcon("images[42].jpg");
Action actionResearch= new AbstractAction("Research", iconResearch)
{
public void actionPerformed(ActionEvent e)
{
System.out.println("Research action");
}
};
JButton btn1 = toolBar.add(actionBack);
btn1.setToolTipText("go to last page");
JButton btn2 = toolBar.add(actionForward);
btn2.setToolTipText("move to next page");
JButton btn3 = toolBar.add(actionSearch);
btn3.setToolTipText("Search web");
JButton btn4= toolBar.add(actionMail);
btn4.setToolTipText("read mail");
JButton btn5= toolBar.add(actionActionCancelled);
btn5.setToolTipText("stop");
JButton btn6= toolBar.add(actionRefresh);
btn6.setToolTipText("Refresh");
JButton btn7= toolBar.add(actionHome);
btn7.setToolTipText("Home");
JButton btn8= toolBar.add(actionFavorites);
btn8.setToolTipText("Favorites");
JButton btn9= toolBar.add(actionHistory);
btn9.setToolTipText("History");
JButton btn10= toolBar.add(actionMessenger);
btn10.setToolTipText("Messenger");
JButton btn11= toolBar.add(actionPrint );
btn11.setToolTipText("Print ");
JButton btn12= toolBar.add(actionResearch );
btn12.setToolTipText("Research ");
p=new JPanel();
p.setLayout(gbl);
jep = new JEditorPane();
t1=new JTextField();
b1=new JButton("Check it out!");
b1.addActionListener(this);
frame.getRootPane().setDefaultButton(b1); // Rsponses the Enter KeyPress
l1=new JLabel("Address");
Label l0;
l0=new Label("");
gbc.anchor=GridBagConstraints.NORTHEAST;
gbc.fill=GridBagConstraints.HORIZONTAL;
gbc.gridx=0;
gbc.gridy=0;
gbc.weightx=0.0;
gbc.weighty=1.0;
gbl.setConstraints(l0,gbc);
p.add(l0);
gbc.anchor=GridBagConstraints.NORTHEAST;
gbc.fill=GridBagConstraints.HORIZONTAL;
gbc.gridx=0;
gbc.gridy=1;
gbc.weightx=1.0;
gbc.weighty=1.0;
gbl.setConstraints(l1,gbc);
p.add(l1);
l1.setToolTipText(" Address bar");
gbc.anchor=GridBagConstraints.NORTHEAST;
gbc.fill=GridBagConstraints.HORIZONTAL;
gbc.gridx=1;
gbc.gridy=1;
gbc.weightx=30.0;
gbc.weighty=1.0;
gbl.setConstraints(t1,gbc);
p.add(t1);
t1.setToolTipText("Enter the link");
gbc.anchor=GridBagConstraints.NORTHWEST;
gbc.fill=GridBagConstraints.HORIZONTAL;
gbc.gridx=2;
gbc.gridy=1;
gbc.weightx=1.0;
gbc.weighty=1.0;
gbl.setConstraints(b1,gbc);
p.add(b1);
b1.setToolTipText("click here to go");
scrollPane = new JScrollPane(jep);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(p,BorderLayout.NORTH);
frame.getContentPane().add(scrollPane,BorderLayout.CENTER);
gbc.anchor=GridBagConstraints.NORTHEAST;
gbc.fill=GridBagConstraints.HORIZONTAL;
gbc.gridx=3;
gbc.gridy=1;
gbl.setConstraints(toolBar,gbc);
p.add(toolBar);
frame.setSize(1000,700);
frame.setVisible(true);
}
public static void locate()
{
char a=initialPage.charAt(0);
char b=initialPage.charAt(1);
char c=initialPage.charAt(2);
char d=initialPage.charAt(3);
char ea=initialPage.charAt(4);
char f=initialPage.charAt(5);
char g=initialPage.charAt(6);
if((a=='h')&&(b=='t')&&(c=='t')&&(d=='p')&&(ea==':')&&(f=='/')&&(g=='/'))
{
initialPage=t1.getText();
}
else
{
initialPage="http://"+initialPage;
}
jep.setEditable(false);
jep.addHyperlinkListener(new second(jep));
try
{
jep.setPage(initialPage);
}
catch (IOException ae)
{
JOptionPane.showMessageDialog(frame,new String("Error: "+ae));
}
}
public void actionPerformed(ActionEvent e)
{
String str=e.getActionCommand();
if(str.equals("New"))
{
System.out.println("new page action");
new BrowserNew();
}
else if(str.equals("Exit"))
{
System.out.println("exit action");
// dispose();
}
else
{
urlStack.push(t1.getText());
initialPage=t1.getText();
locate();
/*
char a=initialPage.charAt(0);
char b=initialPage.charAt(1);
char c=initialPage.charAt(2);
char d=initialPage.charAt(3);
char ea=initialPage.charAt(4);
char f=initialPage.charAt(5);
char g=initialPage.charAt(6);
if((a=='h')&&(b=='t')&&(c=='t')&&(d=='p')&&(ea==':')&&(f=='/')&&(g=='/'))
{
initialPage=t1.getText();
}
else
{
initialPage="http://"+initialPage;
}
jep.setEditable(false);
jep.addHyperlinkListener(new second(jep));
try
{
jep.setPage(initialPage);
}
catch (IOException ae)
{
JOptionPane.showMessageDialog(frame,new String("Error: "+ae));
}
//copied in a separate static function
*/
}
}
public static void main(String[] args)
{
new BrowserNew();
}
}
This post has been edited by devatmax: 8 Sep, 2008 - 12:09 AM