Hvordan lage en nettleser

Hvordan lage en nettleser


Mange begynnelsen programmerere tror at det å skape en nettleser kan bare gjøres i en stor, gruppe-prosjekt setting med hundretusener av linje programmeringskode som kreves for å utføre oppgaven. Selv om dette er sant å lage en nettleser som fullt ut er i samsvar med alle Web Consortium konformitets anbefalinger, kan du lage en enkel nettleser med Java Swing i en kort tidsramme. Denne grunnleggende nettleseren lar deg navigere til websider, vise bilder, lenker til andre sider og lagre sider, men vil ikke gjøre ting som last flash applets og andre funksjoner som krever browser plug-ins som skal installeres.

Bruksanvisning

1 Last ned og installer den nyeste versjonen av Java standard utviklerens kit (SDK) fra Sun Microsystems hvis du ikke har gjort det allerede.

2 Åpne programmeringsprogram eller tekstredigeringsprogram og lagre filen som myFirstWebBrowser.java. Ta på toppen av filen fire klasse bibliotek import (java.awt, java.io, java.awt.event, og javax.swing). Disse bibliotekene er nødvendig for å skape brukergrensesnittet komponenter for søknaden (AWT og swint), gjennomfører HTML komme og sette kommandoer (for å vise websider), og lagre filer (io). Import uttalelser å inkludere er:

importere

java.awt.;
import java.io.;
importere java.awt.event.;
importere javax.swing.;

3 Opprett ny klasse kalt myFirstWebBrowser, som vil være en forlengelse av JInternalFrame slik at du kan ta med nettleseren som en intern ramme i en Java Swing applikasjon. Begynnelsen av klassen definisjon er:

public class PageFrame strekker JInternalFrame implementerer Action {

4 Lag klassedefinisjoner for en SiteManager klasse, til en streng for filnavnet laste og et tekstområde. Konstruktøren av klassen vil laste stedets navn og SiteManager objekter for å tildele de beskyttede klassevariabler. Koden for å gjøre disse trinnene er:

SiteManager myParent;
String myFilename;
JTextArea myTa;

offentlig PageFrame (String mittnavn, SiteManager mySm) {
super ( "Side:" + mittnavn, true, true, true, true);
myParent = mySm;
setBounds (50,50,300,150);

Container contentPane = getContentPane ();

5 Lag tekstområdet som skal vise HTML-fil og laste den inn i en rulle Swing rute som vil tillate deg å se hele HTML-fil. Etter disse trinnene er fullført, lage en meny for den applikasjonen å etterligne File menyer som du er vant til å ha i andre dataprogrammer. I dette eksemplet vil "Fil" og "Lagre" menyvalg bli opprettet. Koden for å gjøre disse trinnene er:

myTa = new JTextArea();
JScrollPane myJsp = new JScrollPane(ta);
contentPane.add(jsp, BorderLayout.CENTER);

JMenuBar myJmb = new JMenuBar ();
JMenu myfileMenu = ny JMenu ( "File");
JMenuItem mySaveItem = ny JMenuItem ( "Save");
mySaveItem.addActionListener (denne);
myFileMenu.add (saveItem);
myJmb.add (Fil-menyen);
setJMenuBar (myJmb);

myFilename = mittnavn;
loadContent ();
}

6 Definer "action Lyttere" som skal utføre metoden oppfordrer svar til brukeren velger "Fil-> Meny" alternativer for å laste og lagre filer. Koden å gjøre dette er:

public void actionPerformed(ActionEvent ae) {

saveContent ();
}

public void loadContent () {
try {
Filereader myFr = new Filereader (myFilename);
myTa.read (myFr, null);
myFr.close ();
} Catch (Exception e) {
System.err.println ( "Kunne ikke laste inn nettsiden:" + myFilename);
}
}

public void saveContent () {
try {
Filewriter myFw = new Filewriter (myFilename);
myTa.write (myFw);
myFw.close ();
} Catch (Exception e) {
System.err.println ( "Kunne ikke lagre nettsiden:" + myFilename);
}
}

}

Hint

  • Den LoboBrowser (se Ressurser nedenfor) er en åpen kildekode, Java-basert nettleser forsøker å tilpasse seg alle W3C anbefalinger som du kan bruke uten kostnad for større prosjekter som krever en skreddersydd nettleser.