Foros del Web » Programación para mayores de 30 ;) » Java »

Como mostrar paginas HTML en una JInternalFrame en una aplicacion

Estas en el tema de Como mostrar paginas HTML en una JInternalFrame en una aplicacion en el foro de Java en Foros del Web. Hola miren, soy novato en java, hasta cierto nivel, estoy haciendo un soft para gestionar informacion de los alumnos de una escuela o facultad, uno ...
  #1 (permalink)  
Antiguo 09/09/2010, 20:52
 
Fecha de Ingreso: febrero-2010
Mensajes: 15
Antigüedad: 14 años, 9 meses
Puntos: 0
Pregunta Como mostrar paginas HTML en una JInternalFrame en una aplicacion

Hola miren, soy novato en java, hasta cierto nivel, estoy haciendo un soft para gestionar informacion de los alumnos de una escuela o facultad, uno de los aspectos del soft es poder visualizar 3 paginas webs dentro de una internal frame en unos tags, me encontre con ese codigo, que creo es el que necesito, sin embargo no se como implementarlo, mas precisamente, no se como lidiar con el SiteManager
--CODIGO--
import java.awt.*;
import java.io.*;
import java.awt.event.*;
import javax.swing.*;

public class PageFrame extends JInternalFrame implements ActionListener {

SiteManager parent;
String filename;
JTextArea ta;

public PageFrame(String name, SiteManager sm) {
super("Page: " + name, true, true, true, true);
parent = sm;
setBounds(50,50,300,150);

Container contentPane = getContentPane();

// Create a text area to display the contents of our file in
// and stick it in a scrollable pane so we can see everything
ta = new JTextArea();
JScrollPane jsp = new JScrollPane(ta);
contentPane.add(jsp, BorderLayout.CENTER);

JMenuBar jmb = new JMenuBar();
JMenu fileMenu = new JMenu("File");
JMenuItem saveItem = new JMenuItem("Save");
saveItem.addActionListener(this);
fileMenu.add(saveItem);
jmb.add(fileMenu);
setJMenuBar(jmb);

filename = name;
loadContent();
}

public void actionPerformed(ActionEvent ae) {
// Can only be the save menu
saveContent();
}

public void loadContent() {
try {
FileReader fr = new FileReader(filename);
ta.read(fr, null);
fr.close();
} catch (Exception e) {
System.err.println("Could not load page: " + filename);
}
}

public void saveContent() {
try {
FileWriter fw = new FileWriter(filename);
ta.write(fw);
fw.close();
} catch(Exception e) {
System.err.println("Could not save page: " + filename);
}
}

public void cutText() { ta.cut(); }
public void copyText() { ta.copy(); }
public void pasteText() { ta.paste(); }
}

Por favor si me van a dar una respuesta como andate a leer sobre java mejor no respondan, porque esta bien que soy novato, pero se lo suficiente como para considerarme rookie
  #2 (permalink)  
Antiguo 10/09/2010, 10:21
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 1 mes
Puntos: 454
Respuesta: Como mostrar paginas HTML en una JInternalFrame en una aplicacion

Pues tal cual has puesto el código, el parámetro SiteManager sm y el atributo parent=sm puedes quitarlos tranquilamente. Se recibe sm en el constructor, se guarda en parent.... y no se usa para nada.

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 10/09/2010, 22:34
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Como mostrar paginas HTML en una JInternalFrame en una aplicacion

Esto es como un contenedor parecido al html workshop??
  #4 (permalink)  
Antiguo 10/09/2010, 23:55
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 1 mes
Puntos: 454
Respuesta: Como mostrar paginas HTML en una JInternalFrame en una aplicacion

No sé, no es una clase de Java estándar. ¿De dónde la has sacado? ¿No tiene documentación?

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #5 (permalink)  
Antiguo 15/09/2010, 20:24
 
Fecha de Ingreso: febrero-2010
Mensajes: 15
Antigüedad: 14 años, 9 meses
Puntos: 0
De acuerdo Respuesta: Como mostrar paginas HTML en una JInternalFrame en una aplicacion

Hola siento la demora en responder, ya lo arregle simplemente implemente una clase mejor con una que me encontre en el internete, se las dejo aca por si algun dia les es de ayuda...
package clases;

import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;

import javax.swing.AbstractAction;
import javax.swing.Action;
import javax.swing.JButton;
import javax.swing.JEditorPane;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTabbedPane;
import javax.swing.JTextField;
import javax.swing.JToolBar;
import javax.swing.event.HyperlinkEvent;
import javax.swing.event.HyperlinkListener;

public class TabbedPaneWebBrowser extends JFrame {

private JTabbedPane tabbedPane = new JTabbedPane();

public TabbedPaneWebBrowser() {
super("Navegador");

createNewTab();

getContentPane().add(tabbedPane);

JMenu fileMenu = new JMenu("Archivos");
fileMenu.add(new NewTabAction());
fileMenu.addSeparator();
fileMenu.add(new ExitAction());
fileMenu.setMnemonic('F');

JMenuBar menuBar = new JMenuBar();
menuBar.add(fileMenu);
setJMenuBar(menuBar);

}

private void createNewTab() {
JPanel panel = new JPanel(new BorderLayout());
WebBrowserPane browserPane = new WebBrowserPane();
WebToolBar toolBar = new WebToolBar(browserPane);
panel.add(toolBar, BorderLayout.NORTH);
panel.add(new JScrollPane(browserPane), BorderLayout.CENTER);
tabbedPane.addTab("Pestaña Nº " + tabbedPane.getTabCount(), panel);
}

private class NewTabAction extends AbstractAction {

public NewTabAction() {
putValue(Action.NAME, "Nueva pestaña");
putValue(Action.SHORT_DESCRIPTION, "Crea una nueva pestaña");
putValue(Action.MNEMONIC_KEY, new Integer('N'));
}

public void actionPerformed(ActionEvent event) {
createNewTab();
}
}

private class ExitAction extends AbstractAction {
public ExitAction() {
putValue(Action.NAME, "Salir");
putValue(Action.SHORT_DESCRIPTION, "Sale de la aplicacion");
putValue(Action.MNEMONIC_KEY, new Integer('x'));
}

public void actionPerformed(ActionEvent event) {
System.exit(0);
}
}

public static void main(String args[]) {
TabbedPaneWebBrowser browser = new TabbedPaneWebBrowser();
browser.setDefaultCloseOperation(EXIT_ON_CLOSE);
browser.setSize(640, 480);
browser.setVisible(true);
}
}

class WebBrowserPane extends JEditorPane {

private List history = new ArrayList();

private int historyIndex;

public WebBrowserPane() {
setEditable(false);
}

public void goToURL(URL url) {
displayPage(url);
history.add(url);
historyIndex = history.size() - 1;
}

public URL forward() {
historyIndex++;
if (historyIndex >= history.size())
historyIndex = history.size() - 1;

URL url = (URL) history.get(historyIndex);
displayPage(url);

return url;
}

public URL back() {
historyIndex--;

if (historyIndex < 0)
historyIndex = 0;

URL url = (URL) history.get(historyIndex);
displayPage(url);

return url;
}

private void displayPage(URL pageURL) {
try {
setPage(pageURL);
} catch (IOException ioException) {
ioException.printStackTrace();
}
}
}

class WebToolBar extends JToolBar implements HyperlinkListener {

private WebBrowserPane webBrowserPane;

private JButton backButton;

private JButton forwardButton;

private JTextField urlTextField;

public WebToolBar(WebBrowserPane browser) {
super("Web Navigation");

// register for HyperlinkEvents
webBrowserPane = browser;
webBrowserPane.addHyperlinkListener(this);

urlTextField = new JTextField(25);
urlTextField.addActionListener(new ActionListener() {

// navigate webBrowser to user-entered URL
public void actionPerformed(ActionEvent event) {

try {
URL url = new URL(urlTextField.getText());
webBrowserPane.goToURL(url);
}

catch (MalformedURLException urlException) {
urlException.printStackTrace();
}
}
});

backButton = new JButton("Atras");
backButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
URL url = webBrowserPane.back();
urlTextField.setText(url.toString());
}
});

forwardButton = new JButton("Adelante");

forwardButton.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent event) {
URL url = webBrowserPane.forward();
urlTextField.setText(url.toString());
}
});
add(backButton);
add(forwardButton);
add(urlTextField);
}

public void hyperlinkUpdate(HyperlinkEvent event) {
if (event.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
URL url = event.getURL();
webBrowserPane.goToURL(url);
urlTextField.setText(url.toString());
}
}
}



Etiquetas: html, jinternalframe, aplicaciones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:52.