Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    help - formattare il testo

    devo creare una specie di "styled editor" che abbia il bold, italic, underline, e anche alcune caratteristiche html, cioe' link, lista ordinata, lista non ordinata, tabella

    ho un fatto delle prove con jtextpane ma mi da un problemino, e non so se si puo' utilizzare per le tabelle e per le liste:
    ho due stili: bold e italic, se ne applico uno sul testo dove ho gia applicato l'altro, viene sovrascritto.

    come faccio per fare in modo che non si sovrascrivono?
    e come facico per capire se è stato utilizzato uno stile su una parte di testo?

    Codice PHP:
    StyledDocument doc Editor.getStyledDocument();
            
    SimpleAttributeSet charAttributes = new SimpleAttributeSet();
            
    StyleConstants.setItalic(charAttributestrue);
            
    int i Editor.getSelectionStart();
            
    int f Editor.getSelectionEnd();
            
    int l f-i;
            
    doc.setCharacterAttributes(ilcharAttributestrue); 
    Codice PHP:
    StyledDocument doc Editor.getStyledDocument();
            
    SimpleAttributeSet charAttributes = new SimpleAttributeSet();
            
    StyleConstants.setBold(charAttributestrue);
            
    int i Editor.getSelectionStart();
            
    int f Editor.getSelectionEnd();
            
    int l f-i;
            
    doc.setCharacterAttributes(ilcharAttributestrue); 
    devo utilizzare degli altri oggetti come
    javax.swing.text.StyledEditorKit;
    javax.swing.text.html.HTMLEditorKit;

    non ci sono alcuni esmepi semplici?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: help - formattare il testo

    Originariamente inviato da superman1001
    codice:
    doc.setCharacterAttributes(i, l, charAttributes, true);
    Se metti 'true' elimina gli attributi già presenti prima di impostare quelli passati con il terzo argomento!! Metti false, che fa un "merge".
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    wow grazie!
    sai darmi anche qualche consiglio per le tabelle, lieste e link?
    sono disperato!

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da superman1001
    sai darmi anche qualche consiglio per le tabelle, lieste e link?
    C'è una cosa che forse non sai: all'interno di uno styled document puoi anche inserire un qualunque componente: JLabel, JButton, JTable o altro! StyleConstants ha un metodo setComponent().
    Questo può aprire un ventaglio di possibilità interessanti!
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    grazie mille!
    faccio subito quache prova, se ho problemi (sicuramente ) ti disturbo ancora

  6. #6
    come posso leggere un file html e mettere il contenuto formattato li dentro e anche salvare il contenuto del jtextpane e salvarlo in formato html?

  7. #7
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da superman1001
    come posso leggere un file html e mettere il contenuto formattato li dentro e anche salvare il contenuto del jtextpane e salvarlo in formato html?
    Leggi qui in particolare il secondo punto elencato.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  8. #8
    mi da errore su Action.NAME, dice che cannot find symbol ma non capisco il perche...



    Codice PHP:
    import java.awt.Desktop.Action;
    ......
    private 
    UndoManager undom = new UndoManager();
    ......

    private class 
    UndoAction extends AbstractAction {
            
            public 
    UndoAction() {
                
    super("Undo");
                
    setEnabled(false);
            }
            
            public 
    void actionPerformed(ActionEvent e) {
                try {
                    
    undom.undo();
                } catch (
    CannotUndoException ex) {}
                
    updateUndoState();
                
    redoAction.updateRedoState();
            }
            
            protected 
    void updateUndoState() {
                if (
    undo.canUndo()) {
                    
    setEnabled(true);
                    
    putValue(Action.NAMEundo.getUndoPresentationName());
                } else {
                    
    setEnabled(false);
                    
    putValue(Action.NAME"Undo");
                }
            }
        } 

  9. #9
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da superman1001
    mi da errore su Action.NAME, dice che cannot find symbol ma non capisco il perche...
    NAME è di javax.swing.Action ... mentre java.awt.Desktop.Action è una nested enum, disponibile solo da Java 6 e non è quello che ti serve!!
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  10. #10
    ecco perche non funzionava!
    grazie!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.