Apresentando páginas HTML em sua aplicação

Veja nesta dica como fazer com que suas aplicaçoes possam exibir páginas HTML.

Apresentando páginas HTML em sua aplicação

Veja nesta dica um método para apresentar páginas HTML em sua aplicação.  Esta é uma simples extensão da classe JInternalFrame que contem uma lista de objetos.  Aqui os elementos da lista representam páginas HTML de um Web site qualquer.

<B><SPAN >import </SPAN></B><SPAN >java.awt.*;</SPAN>
<B><SPAN >import </SPAN></B><SPAN >java.io.*;</SPAN>
<B><SPAN >import </SPAN></B><SPAN >java.awt.event.*;</SPAN>
<B><SPAN >import </SPAN></B><SPAN >javax.swing.*;</SPAN>

<B><SPAN >public class </SPAN></B><SPAN >PageFrame </SPAN><B><SPAN >extends </SPAN></B><SPAN >JInternalFrame </SPAN><B><SPAN >implements </SPAN></B><SPAN >ActionListener {</SPAN>

<SPAN >SiteManager parent;</SPAN>
<SPAN >String filename;</SPAN>
<SPAN >JTextArea ta;</SPAN>

<B><SPAN >public </SPAN></B><SPAN >PageFrame(String name, SiteManager sm) {</SPAN>
<B><SPAN >super</SPAN></B><SPAN >(</SPAN><SPAN >"Página: " </SPAN><SPAN >+ name, true, true, true, </SPAN><B><SPAN >true</SPAN></B><SPAN >);</SPAN>
<SPAN >parent = sm;</SPAN>
<SPAN >setBounds(</SPAN><SPAN >50</SPAN><SPAN >,</SPAN><SPAN >50</SPAN><SPAN >,</SPAN><SPAN >300</SPAN><SPAN >,</SPAN><SPAN >150</SPAN><SPAN >);</SPAN>

<SPAN >Container contentPane = getContentPane();</SPAN>

<SPAN >// Cria um text area para apresentar o conteúdo armazenado no arquivo</SPAN>

<SPAN >ta = </SPAN><B><SPAN >new </SPAN></B><SPAN >JTextArea();</SPAN>
<SPAN >JScrollPane jsp = </SPAN><B><SPAN >new </SPAN></B><SPAN >JScrollPane(ta);</SPAN>
<SPAN >contentPane.add(jsp, BorderLayout.CENTER);</SPAN>

<SPAN >JMenuBar jmb = </SPAN><B><SPAN >new </SPAN></B><SPAN >JMenuBar();</SPAN>
<SPAN >JMenu fileMenu = </SPAN><B><SPAN >new </SPAN></B><SPAN >JMenu(</SPAN><SPAN >"Arquivo"</SPAN><SPAN >);</SPAN>
<SPAN >JMenuItem saveItem = </SPAN><B><SPAN >new </SPAN></B><SPAN >JMenuItem(</SPAN><SPAN >"Salvar"</SPAN><SPAN >);</SPAN>
<SPAN >saveItem.addActionListener(</SPAN><B><SPAN >this</SPAN></B><SPAN >);</SPAN>
<SPAN >fileMenu.add(saveItem);</SPAN>
<SPAN >jmb.add(fileMenu);</SPAN>
<SPAN >setJMenuBar(jmb);</SPAN>

<SPAN >filename = name;</SPAN>
<SPAN >loadContent();</SPAN>
<SPAN >}</SPAN>

<B><SPAN >public void </SPAN></B><SPAN >actionPerformed(ActionEvent ae) {</SPAN>
<SPAN >saveContent();</SPAN>
<SPAN >}</SPAN>

<B><SPAN >public void </SPAN></B><SPAN >loadContent() {</SPAN>
<B><SPAN >try </SPAN></B><SPAN >{</SPAN>
<SPAN >FileReader fr = </SPAN><B><SPAN >new </SPAN></B><SPAN >FileReader(filename);</SPAN>
<SPAN >ta.read(fr, </SPAN><B><SPAN >null</SPAN></B><SPAN >);</SPAN>
<SPAN >fr.close();</SPAN>
<SPAN >} </SPAN><B><SPAN >catch </SPAN></B><SPAN >(Exception e) {</SPAN>
<SPAN >System.err.println(</SPAN><SPAN >"Nao é possével carregar a página: " </SPAN><SPAN >+ filename);</SPAN>
<SPAN >}</SPAN>
<SPAN >}</SPAN>

<B><SPAN >public void </SPAN></B><SPAN >saveContent() {</SPAN>
<B><SPAN >try </SPAN></B><SPAN >{</SPAN>
<SPAN >FileWriter fw = </SPAN><B><SPAN >new </SPAN></B><SPAN >FileWriter(filename);</SPAN>
<SPAN >ta.write(fw);</SPAN>
<SPAN >fw.close();</SPAN>
<SPAN >} </SPAN><B><SPAN >catch</SPAN></B><SPAN >(Exception e) {</SPAN>
<SPAN >System.err.println(</SPAN><SPAN >"Nao foi possível salvar a página: " </SPAN><SPAN >+ filename);</SPAN>
<SPAN >}</SPAN>
<SPAN >}</SPAN>

<B><SPAN >public void </SPAN></B><SPAN >cutText() { ta.cut(); }</SPAN>
<B><SPAN >public void </SPAN></B><SPAN >copyText() { ta.copy(); }</SPAN>
<B><SPAN >public void </SPAN></B><SPAN >pasteText() { ta.paste(); }</SPAN>
<SPAN >}</SPAN>

Artigos relacionados