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

avec Java Discussion :

Probleme avec HTMLEditorKit


Sujet :

avec Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 7
    Points : 8
    Points
    8
    Par défaut Probleme avec HTMLEditorKit
    Bonsoir à tous, j'espère être dans la bonne section pour mon premier post

    J'ai un soucis dans le développement de mon application. Il s'agit en gros d'un éditeur de texte classique. Mon problème vient d'une fonctionnalité je veux insérer des liens dans mon éditeur que j'écoute avec un listener tout marche a merveille sauf que....

    Lorsque mon lien est inséré apres on ne peut plus en sortir lorsque l'utilisateur continue de taper, après tout ce qu'il écrit se retrouve entre les <a href="..."> et </a>.

    Voici la méthode qui se charge de ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    void insertSrc(File selectedFile) {
    	String balise = "<a href='file:///" + selectedFile.getAbsoluteFile() + "'>" + selectedFile.getName() + "</a>";
    	try {
    	    kit.insertHTML((HTMLDocument) this.getDocument(), this.getCaretPosition(), balise, 0, 0, HTML.Tag.A);
    	} catch (BadLocationException ex) {
    	    Logger.getLogger(MainFrame.class.getName()).log(Level.SEVERE, null, ex);
    	} catch (IOException ex) {
    	    Logger.getLogger(MainFrame.class.getName()).log(Level.SEVERE, null, ex);
    	}
        }
    Merci d'avance.

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    J'ai trouver une solution pas top qui me permet de me détacher du liens j'insert a la suite un &nbsp;. Mais si l'utilisateur efface cet espace il se retrouve de nouveau dans le liens ....
    J'attend toujours votre aide.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    476
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 476
    Points : 595
    Points
    595
    Par défaut
    Salut,

    Tu peux nous montrer la partie du listener ?
    Ils flottent tous en bas

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    Mon listener marche bien j'arrive a ouvrir les fichier que je veus mais je vous met la méthode quand même.

    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
    36
    37
    38
    39
     public void hyperlinkUpdate(HyperlinkEvent e) {
    	if (e.getURL() == null) {
     
    //Cette partie me sert quand le lien n'est pas un fichier mais un mot qui 
    //possède une info dans mon code (un genre de dictionnaire).
    //Au passage de la souris une infobulle apparait.
    	    if (e.getEventType() == HyperlinkEvent.EventType.EXITED) {
    		parrent.setToolTipText(null);
    	    }
    	    if (e.getEventType() == HyperlinkEvent.EventType.ENTERED) {
    		Enumeration en = e.getSourceElement().getAttributes().getAttributeNames();
    		String o = null;
    		while (en.hasMoreElements()) {
    		    o = e.getSourceElement().getAttributes().getAttribute(en.nextElement()).toString();
    		    if (o.startsWith("href=")) {
    			break;
    		    }
    		}
    		String w = o.substring(5);
    		parrent.setToolTipText(superParrent.getAbOject().getInfoByWord(w));
    	    }
    	}
    // Ici au click sur le lien j'ouvre le fichier grace a la classe Desktop
     
    	if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
    	    String url = e.getURL().toString();
    	    String cmd = url.substring(6);
    	    File file = new File(cmd);
    	    if (getFileExtension(file).equals("html")) {
    		parrent.setFile(file);
    	    } else {
    		try {
    		    d.open(file);
    		} catch (IOException ex) {
    		    Logger.getLogger(HyperLink.class.getName()).log(Level.SEVERE, null, ex);
    		}
    	    }
    	}
        }

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    476
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 476
    Points : 595
    Points
    595
    Par défaut
    En fait, je ne parlais pas du code d'ouverture du fichier mais savoir quel listener tu utilisais et comment tu le faisais correspondre à ton composant graphique.

    Je connais pas du tout HTMLEditorKit mais est ce que le problème ne serait pas ta balise <a> qui n'est pas fermée correctement à cause de caractères spéciaux genre \ ?
    Avec une chaine en dur genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="http://www.developpez.com"> Developper</a>
    ca donne le même résultat ?
    Ils flottent tous en bas

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    Bon après plein de test je pense que ce composant ne doit pas être fait pour sa
    je vous remercie de votre aide je passe en résolue, même si je n'est pas vraiment trouver de solution autre que cette bidouille.

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

Discussions similaires

  1. Probleme avec la copie des surfaces
    Par Black_Daimond dans le forum DirectX
    Réponses: 3
    Dernier message: 09/01/2003, 10h33
  2. Problèmes avec le filtrage des ip
    Par berry dans le forum Réseau
    Réponses: 9
    Dernier message: 30/12/2002, 07h51
  3. probleme avec la touche F10
    Par b.grellee dans le forum Langage
    Réponses: 2
    Dernier message: 15/09/2002, 22h04
  4. Probleme avec fseek
    Par Bjorn dans le forum C
    Réponses: 5
    Dernier message: 04/08/2002, 07h17
  5. [Kylix] probleme avec un imagelist
    Par NicoLinux dans le forum EDI
    Réponses: 4
    Dernier message: 08/06/2002, 23h06

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