IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 Java Discussion :

Utilser HTMLEditorKit avec JEditorPane


Sujet :

Java

  1. #1
    Membre éclairé

    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    469
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 469
    Par défaut Utilser HTMLEditorKit avec JEditorPane
    Bonsoir,

    j'utilise un HTMLEDitorKit poir faire afficher un fichier html dans un JEditorPane. malheureusement les images ne s'affichent pas. Quelqu'un a-t'il une idée de la raison. Bien entendu j'ai vérifié que dans un navigateur le document s'affiche correctement.
    Voici le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    	private void VisualiserCarte()
    	{
     
    			String chemin = System.getProperty("user.dir") +File.separator + "pays";
    			JFileChooser chooser = new JFileChooser(chemin);
    			chooser.setMultiSelectionEnabled(false);
    			FileFilter filter = new FileNameExtensionFilter("fichiers htm","htm");
    			chooser.addChoosableFileFilter(filter);
    			if (chooser.showOpenDialog(null) == JFileChooser.CANCEL_OPTION) return;
    			String fichier="pays" + File.separator + chooser.getSelectedFile().getName();
     
    			String urlString="file:///" + new File (fichier).getAbsolutePath().replace ("\\", "/") ;
    			try 
    			{
    				URL url = new URL(urlString);
    				HTMLEditorKit editorKit = new HTMLEditorKit();
    				JFrame fenetre=new JFrame();
    				JEditorPane html = new JEditorPane();
    				html.setEditorKit(editorKit);
     
     
    				html.setPage(url);
     
     
    				html.setEditable(false);  
    				fenetre.getContentPane().add(html);
    				fenetre.pack();
    				fenetre.setVisible(true);	
    			}
    			catch(Exception e)
    			{
    				System.out.println(e);
    				return;
    			}
    Je précise que je suis débutant en java.

  2. #2
    Membre Expert
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 050
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 050
    Par défaut
    Salut,

    Il est possible d'afficher les images, tu as même un exemple sur le tuto de sun.

    Par contre, tu ne peux pas utiliser un HTML et un CSS trop évolué. Il me semble
    que c'est du HTML 3.4, alors si tu as une page en XHTML c'est rapé.

  3. #3
    Membre Expert
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 050
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 050
    Par défaut
    Voici un exemple affichant la page de google, l'image est bien affichée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    import java.awt.Dimension;
    import java.io.IOException;
    import java.net.MalformedURLException;
    import java.net.URL;
    import javax.swing.JEditorPane;
    import javax.swing.JFrame;
    import javax.swing.JScrollPane;
     
    public class Test {
     
    	public static void main(String[] args) {
    		JFrame frame = new JFrame();
    		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     
    		JEditorPane editor = new JEditorPane();
    		editor.setPreferredSize(new Dimension(500, 400));
     
    		frame.setContentPane(new JScrollPane(editor));
    		frame.pack();
     
    		try {
    			editor.setPage(new URL("http://www.google.fr/"));
    		} catch (MalformedURLException e) {
    			e.printStackTrace();
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
     
    		frame.setVisible(true);
    	}
     
    }

  4. #4
    Membre éclairé

    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    469
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 469
    Par défaut
    Citation Envoyé par visiwi Voir le message
    Voici un exemple affichant la page de google, l'image est bien affichée.
    Merci, je vais essayer et vous tiens au courant.

  5. #5
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par visiwi Voir le message
    Salut,

    Il est possible d'afficher les images, tu as même un exemple sur le tuto de sun.

    Par contre, tu ne peux pas utiliser un HTML et un CSS trop évolué. Il me semble
    que c'est du HTML 3.4, alors si tu as une page en XHTML c'est rapé.
    HTML3.2 / CSS1 aux dernières nouvelles

    Par contre il existe des renderer html plus évolués écrit en java, comme par exemple le browser "lobo".

  6. #6
    Membre éclairé

    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    469
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 469
    Par défaut
    Après plusieurs essais, mon JEditorPane accepte d'afficher les images png mais pas les bmp ?

    Quelqu'un a une idée ?

  7. #7
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    les bmp ne sont pas supportés. Seul sont supporté par java, il me semble, les png, les gif, les jpeg. Ca correspond d'ailleurs aux format généralement utilisés sur les pages web. Je connais pas beaucoup de pages qui utilisent des bmp.

  8. #8
    Membre éclairé

    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    469
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 469
    Par défaut
    Je pensais avoir répondu mais je ne vois pas cette réponse.
    Donc je remercie Tchize et Wisiwi pour leur aide qui m'a permis de ne pas chercher trop longtemps. Je pensais en me fiant à ma documentation "introduction à Java" chez O'Reilly que JEDitorPane pouvait afficher les fichiers html du moment qu'ils ne soient pas trop complexes (pas de css ...), mais je ne pensais pas qu'une image bmp pouvait être considérée comme non conforme.
    Je ne sais comment mettre résolu sur le post mais je vais chercher.

    Au revoir

  9. #9
    Membre éclairé

    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    469
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 469
    Par défaut
    J'ai trouvé comment mettre résolu, c'est même simplissime.
    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. comment utilser Feval avec c#
    Par younesgates dans le forum MATLAB
    Réponses: 0
    Dernier message: 07/03/2010, 13h18
  2. Question sur l'utilsation cpu avec jogl/opengl
    Par Elendhil dans le forum Moteurs 3D
    Réponses: 6
    Dernier message: 21/10/2009, 13h47
  3. [JEditorPane] Retour à la ligne avec le HTMLEditorKit
    Par Julien Bodin dans le forum Composants
    Réponses: 2
    Dernier message: 17/08/2009, 13h40
  4. problème avec JEditorPane()
    Par Methode dans le forum AWT/Swing
    Réponses: 0
    Dernier message: 07/12/2007, 19h54
  5. [JEditorPane] Problème avec caractère accentué
    Par scifire dans le forum Composants
    Réponses: 6
    Dernier message: 14/09/2005, 14h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo