2009-09-21 7 views
7

Duplicate possible:
Is there a way to embed a browser in Java?navigateur Intégrer dans l'application de bureau Java

Comment puis-je intégrer un navigateur dans une application de bureau Java? Puis-je communiquer directement avec le navigateur intégré (pas via localhost) ... comme le chargement de texte HTML, la capture d'événements onclick, l'obtention de valeurs de formulaire?

Merci

+0

Voulez-vous un navigateur intégré réel, ou voulez-vous naviguer par programmation les pages HTML? – skaffman

+0

Peut vouloir aller à la caisse https://github.com/rogerwang/node-webkit – jrhicks

Répondre

6

départ Eclipse, il a un navigateur intégré qui est configurable par l'utilisateur (ils soutiennent plusieurs navigateurs).

Vous pouvez probablement intégrer leur navigateur même si vous utilisez une application AWT utilisant le pont AWT_SWT.

cette article peut vous aider à démarrer.

+0

Existe-t-il une version autonome de ceci? –

3

Vous pouvez construire un navigateur très primitive en utilisant JEditorPane. Vous pouvez écouter les événements Hyperlink, mais le javascript ou l'obtention de valeurs de formulaire n'est pas possible.

2

Lobo est un navigateur Web Java qui peut être intégré dans des applications Swing.

Il prend en charge HTML 4, CSS 2 et Javascript, ce qui est plus à jour par rapport au JEditorPane qui ne supporte que HTML 3.2.

Pour avoir des idées sur ce qui est possible, le Lobo Browser API documentation devrait donner une idée de ce qu'il est possible de faire avec Lobo. En particulier, le org.lobobrowser.gui a une classe BrowserPanel qui est une sous-classe de JPanel, de sorte qu'il peut être directement intégré dans les applications Swing.

Par exemple, la méthode BrowserPanel.navigate peut être utilisée pour accéder aux pages Web, et il existe de nombreux Listener qui peuvent capturer les événements qui se produisent dans le navigateur.

+0

Le projet Lobo original semble être mort. Voici une fourchette: https://sourceforge.net/projects/loboevolution/ – Stefan

1

Vous pouvez essayer la bibliothèque JxBrowser: http://www.teamdev.com/jxbrowser/features/

Par exemple, pour intégrer le navigateur Mozilla dans votre application Java Swing vous avez juste besoin de faire le code suivant:

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

ce n'est pas gratuit à utiliser:/ – mikakun

+0

FYI: pour les projets open source c'est gratuit. – Vladimir

+0

Mise à jour: depuis la version 4.0, JxBrowser s'intègre au moteur Chromium uniquement sur toutes les plateformes, y compris Mac OS X, Linux et Windows. – Vladimir

Questions connexes