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

AWT/Swing Java Discussion :

Erreur JTextPane


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Belegkarnil
    Inscrit en
    Juin 2005
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Juin 2005
    Messages : 289
    Par défaut Erreur JTextPane
    Bonjour, c'est la première fois que j'utilise des JTextPane et j'obtient cette erreur.
    J'ai deux JTextPane. Je prend le texte du premier et je l'insert avec un style dans le second et ca marche, je le refais une deuxième fois et la, ca ne fonctionne plus pourquoi ca marche toujours la première fois mais plus après?

    Je l'insert au dernier offset (je fais getText().length()).

    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    javax.swing.text.BadLocationException: Invalid insert
            at javax.swing.text.GapContent.insertString(GapContent.java:112)
            at javax.swing.text.AbstractDocument.handleInsertString(AbstractDocument
    .java:727)
            at javax.swing.text.AbstractDocument.insertString(AbstractDocument.java:
    711)
            at Parler.action(Logger.java:559)
            at Parler.actionPerformed(Logger.java:579)
            at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:18
    49)
            at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.jav
    a:2169)
            at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel
    .java:420)
            at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258
    )
            at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonL
    istener.java:234)
            at java.awt.Component.processMouseEvent(Component.java:5488)
            at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
            at java.awt.Component.processEvent(Component.java:5253)
            at java.awt.Container.processEvent(Container.java:1966)
            at java.awt.Component.dispatchEventImpl(Component.java:3955)
            at java.awt.Container.dispatchEventImpl(Container.java:2024)
            at java.awt.Component.dispatchEvent(Component.java:3803)
            at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212
    )
            at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
     
            at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
            at java.awt.Container.dispatchEventImpl(Container.java:2010)
            at java.awt.Window.dispatchEventImpl(Window.java:1774)
            at java.awt.Component.dispatchEvent(Component.java:3803)
            at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
            at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchTh
    read.java:242)
            at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThre
    ad.java:163)
            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
     
            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
     
            at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
    javax.swing.text.BadLocationException: Invalid insert
            at javax.swing.text.GapContent.insertString(GapContent.java:112)
            at javax.swing.text.AbstractDocument.handleInsertString(AbstractDocument
    .java:727)
            at javax.swing.text.AbstractDocument.insertString(AbstractDocument.java:
    711)
            at Parler.action(Logger.java:564)
            at Parler.actionPerformed(Logger.java:579)
            at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:18
    49)
            at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.jav
    a:2169)
            at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel
    .java:420)
            at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258
    )
            at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonL
    istener.java:234)
            at java.awt.Component.processMouseEvent(Component.java:5488)
            at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
            at java.awt.Component.processEvent(Component.java:5253)
            at java.awt.Container.processEvent(Container.java:1966)
            at java.awt.Component.dispatchEventImpl(Component.java:3955)
            at java.awt.Container.dispatchEventImpl(Container.java:2024)
            at java.awt.Component.dispatchEvent(Component.java:3803)
            at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212
    )
            at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
     
            at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
            at java.awt.Container.dispatchEventImpl(Container.java:2010)
            at java.awt.Window.dispatchEventImpl(Window.java:1774)
            at java.awt.Component.dispatchEvent(Component.java:3803)
            at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
            at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchTh
    read.java:242)
            at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThre
    ad.java:163)
            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
     
            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
     
            at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)

  2. #2
    Membre expérimenté Avatar de schneidb
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    236
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 236
    Par défaut
    je vois un Invalid insert , ne serait-ce pas plutot length()-1 ?

  3. #3
    Membre éclairé Avatar de Belegkarnil
    Inscrit en
    Juin 2005
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Juin 2005
    Messages : 289
    Par défaut
    nan j'ai essayé par après. Voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    try{
    	doc.insertString(texte.getText().length(),"Pseudo dit :", doc.getStyle("dit"));
    }catch(BadLocationException ble){
    	ble.printStackTrace();
    }
    Mes variables :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    JTextPane texte = new JTextPane();
    StyledDocument doc = texte.getStyledDocument();
    def =	StyleContext.getDefaultStyleContext().getStyle(StyleContext.DEFAULT_STYLE);
    dit = doc.addStyle("dit", def);

  4. #4
    Membre éclairé Avatar de Belegkarnil
    Inscrit en
    Juin 2005
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Juin 2005
    Messages : 289
    Par défaut
    je viens de remplacer le code par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    boolean teste = true;
    		int lgt = texte.getText().length();
    	do{
    		try{
    			doc.insertString(lgt,dire, doc.getStyle("dit"));
    			//doc.insertString(0, "\n"+zone.getText(), doc.getStyle("moi"));
    			teste=false;
    		}catch(BadLocationException ble){
    			ble.printStackTrace();
    			lgt--;
    		}
    }while(teste);
    Et je remarque que l'erreur vient du retour a la ligne. Comment faire?

    Je crois qu'il compte deux codes pour le retour à la ligne puisque ENTER vaut 10 et 13. Or que lorsqu'on utilise "\n" java envoie 10

  5. #5
    Membre éclairé Avatar de Belegkarnil
    Inscrit en
    Juin 2005
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Juin 2005
    Messages : 289
    Par défaut
    Ok merci j'ai trouvé...

    A la place de regarder la longueur du texte de mon JTextPane, il faut regarder la longueur du doc (DocumentStyle) et voila ;-)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    doc.insertString(doc.getLength(),name+" dit :\n", doc.getStyle("dit"));

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

Discussions similaires

  1. Message d'erreur dans jtextpane
    Par grospatapouf dans le forum Composants
    Réponses: 4
    Dernier message: 11/11/2008, 12h58
  2. Erreur fréquente avec ASP et IIS
    Par Community Management dans le forum ASP
    Réponses: 2
    Dernier message: 11/02/2004, 22h20
  3. Réponses: 2
    Dernier message: 27/05/2002, 19h46
  4. erreur IDL:omg.org/CORBA/MARSHAL:1.0
    Par Pinggui dans le forum CORBA
    Réponses: 3
    Dernier message: 13/05/2002, 15h05
  5. [Kylix] Erreur objet
    Par Anonymous dans le forum EDI
    Réponses: 1
    Dernier message: 22/03/2002, 09h41

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