2009-09-21 9 views
7

Eventuali duplicati:
Is there a way to embed a browser in Java?del browser Incorpora in Java un'applicazione desktop basata

Come posso incorporare un browser in un'applicazione desktop basata su Java? Posso comunicare direttamente con il browser incorporato (non tramite localhost) ... come caricare il testo html, catturare gli eventi onclick, ottenere i valori del modulo?

Grazie

+0

vuoi un vero browser incorporato o vuoi navigare in modo programmatico nelle pagine HTML? – skaffman

+0

Potrebbe voler effettuare il checkout https://github.com/rogerwang/node-webkit – jrhicks

risposta

6

check-out Eclipse, ha un browser incorporato che è configurabile dall'utente (che supportano più browser).

probabilmente puoi incorporare il browser anche se utilizzi un'applicazione basata su AWT utilizzando il bridge AWT_SWT.

questo article può aiutarti a iniziare.

+0

Esiste una versione stand alone di questo? –

3

È possibile costruire un browser molto primitivo utilizzando JEditorPane. Puoi ascoltare gli eventi Hyperlink, ma javascript o ottenere i valori del modulo non è possibile.

2

Lobo è un browser Web Java che può essere incorporato nelle applicazioni Swing.

Supporta HTML 4, CSS 2 e Javascript, che è più aggiornato rispetto allo JEditorPane che supporta solo HTML 3.2.

Per alcune idee su ciò che è possibile, lo Lobo Browser API documentation dovrebbe fornire un'idea di cosa è possibile fare con Lobo. In particolare, lo org.lobobrowser.gui ha una classe BrowserPanel che è una sottoclasse di JPanel, quindi può essere incorporata direttamente nelle applicazioni Swing.

Ad esempio, il metodo BrowserPanel.navigate può essere utilizzato per saltare a pagine web, e ci sono molti Listener s che può catturare gli eventi che si verificano nel browser.

+0

Il progetto Lobo originale sembra essere morto. Ecco un fork: https://sourceforge.net/projects/loboevolution/ – Stefan

1

Si potrebbe provare JxBrowser libreria: http://www.teamdev.com/jxbrowser/features/

Per esempio per incorporare browser Mozilla nella vostra applicazione Java Swing basta fare il seguente codice:

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

questo non è libero di usare:/ – mikakun

+0

FYI: per i progetti open source è gratuito. Aggiornamento – Vladimir

+0

: dalla versione 4.0 JxBrowser si integra con il motore Chromium solo su tutte le piattaforme, inclusi Mac OS X, Linux e Windows. – Vladimir

Problemi correlati