2009-09-21 12 views
7

Duplicar posibles:
Is there a way to embed a browser in Java?navegador Insertar en Java aplicación de escritorio basada

¿Cómo puedo incrustar un navegador de una aplicación de escritorio basada en Java? ¿Puedo comunicarme directamente con el navegador incrustado (no a través de localhost) ... como cargar texto html, capturar eventos onclick, obtener valores de formulario?

Gracias

+0

¿Desea un navegador incrustado real, o desea navegar por páginas HTML mediante programación? – skaffman

+0

Puede que desee pagar https://github.com/rogerwang/node-webkit – jrhicks

Respuesta

6

la salida de Eclipse, que tiene un navegador integrado que es configurable por el usuario (que apoyan múltiples navegadores).

probablemente pueda insertar su navegador incluso si usa una aplicación basada en AWT utilizando el puente AWT_SWT.

este article puede ayudarlo a comenzar.

+0

¿Hay una versión independiente de esto? –

3

Se puede construir un navegador muy primitiva usando JEditorPane. Puede escuchar los eventos Hyperlink, pero javascript u obtener valores de formulario no es posible.

2

Lobo es un navegador web Java que puede integrarse en las aplicaciones Swing.

Es compatible con HTML 4, CSS 2 y Javascript, que es más actualizado en comparación con el JEditorPane que solo es compatible con HTML 3.2.

Para algunas ideas sobre lo que es posible, el Lobo Browser API documentation debería dar una idea de lo que se puede hacer con Lobo. En particular, el org.lobobrowser.gui tiene una clase BrowserPanel que es una subclase de JPanel, por lo que se puede incrustar directamente en las aplicaciones Swing.

Por ejemplo, el método BrowserPanel.navigate se puede utilizar para saltar a páginas web, y hay muchos Listener que pueden capturar eventos que ocurren en el navegador.

+0

El proyecto original de Lobo parece estar muerto. Aquí hay un tenedor: https://sourceforge.net/projects/loboevolution/ – Stefan

1

Usted podría intentar biblioteca JxBrowser: http://www.teamdev.com/jxbrowser/features/

Por ejemplo, para incrustar el navegador Mozilla en su aplicación Java Swing sólo tiene que hacer lo siguiente código:

Browser browser = BrowserFactory.createBrowser(BrowserType.Mozilla); 

JFrame frame = new JFrame(); 

frame.add(browser.getComponent(), BorderLayout.CENTER); 
frame.setSize(700, 500); 
frame.setLocationRelativeTo(null); 
frame.setVisible(true); 

browser.navigate("http://www.google.com"); 
+2

esto no es de uso gratuito:/ – mikakun

+0

FYI: para proyectos de código abierto es gratis. – Vladimir

+0

Actualización: desde la versión 4.0, JxBrowser se integra con el motor Chromium solo en todas las plataformas, incluidas Mac OS X, Linux y Windows. – Vladimir

Cuestiones relacionadas