Editeur de texte à la wordpad

Soyez le premier à donner votre avis sur cette source.

Vue 20 338 fois - Téléchargée 2 613 fois

Description

N'ayant pas trouvé de source similaire, j'ai dû développer ce petit éditeur de texte assez basique, mais qui va me permettre de faire un nouveau CellEditor pour ma future JPropertyTable.

Il s'agit d'un petit éditeur de texte "à la wordpad", c'est-à-dire que vous avez une barre d'outils pour modifier la présentation du texte du JTextPane. Possibilité d'annuler/rétablir les saisie et modifications de la mise en page, et gestion du presse papier.
Gestion de l'enregistrement dans un fichier rtf.

Rien de bien compliqué, mais je pense que ca peux aider certains membres qui voudraient avoir une petite fenêtre d'édition de texte toute simple où l'utilisateur pourrait modifier la mise en forme du texte.
De plus, ca peux montrer comment se servir des fonts.
Enfin, cette source contient un petit menu "exporter" afin de montrer un exemple d'utilisation de mon autre source qui fait un balisage d'un texte.

Note : l'utilisation des styles Underline et Strikethrough, style qui ne sont pas utilisable à ma connaissance à l'aide de l'objet Font !

Source / Exemple :


// Voici la fonction la plus intéressante de cette source qui permet de définir le style du texte sélectionné dans le JTextPane passé en paramètre selon les params passés :

public static void setJTextPaneFont(JTextPane jtp, boolean bAllText, String sFontName, Boolean bBold, Boolean bItalic, Boolean bUnderline, Boolean bStrikeThrough, Integer iSize, Color oColor) {
		
        MutableAttributeSet attrs = jtp.getInputAttributes();

        // on applique les différents styles
        if (sFontName != null) {
        	StyleConstants.setFontFamily(attrs, sFontName);
        }
        if (bBold != null) {
        	StyleConstants.setBold(attrs, bBold);
        }
        if (bItalic != null) {
        	StyleConstants.setItalic(attrs, bItalic);
        }
        if (iSize != null) {
        	StyleConstants.setFontSize(attrs, iSize);
        }
        if (oColor != null) {
        	StyleConstants.setForeground(attrs, oColor);
        }
        if (bUnderline != null) {
        	StyleConstants.setUnderline(attrs, bUnderline);
        }
        if (bStrikeThrough != null) {
        	StyleConstants.setStrikeThrough(attrs, bStrikeThrough);
        }
        
        StyledDocument doc = jtp.getStyledDocument();

        if (!bAllText) {
        	// on modifie uniquement le texte sélectionné
        	int iStart = jtp.getSelectionStart();
        	doc.setCharacterAttributes(iStart, jtp.getSelectionEnd() - iStart, attrs, false);
        }
        else {
        	// on modifie le style du jtext lui même
        	jtp.setCharacterAttributes(attrs, false);
        }
    }

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
1
Date d'inscription
dimanche 29 novembre 2009
Statut
Membre
Dernière intervention
1 décembre 2009

Merci boucoup pour ce code , éditeur impeccable
:)
Messages postés
2
Date d'inscription
dimanche 7 décembre 2008
Statut
Membre
Dernière intervention
17 septembre 2009

Je donne 10/10 pour un éditeur pareil
Merci frero
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
99
Bah de rien, il est là pour cà, content de voir que cette source est toujours utile :p
Messages postés
5
Date d'inscription
mardi 1 novembre 2005
Statut
Membre
Dernière intervention
12 septembre 2008

Ton logiciel fonctionne a merveille, vraiment bravo et merci de le partager comme tu le fait. Ça va beaucoup m'aider.
Messages postés
2448
Date d'inscription
samedi 21 février 2004
Statut
Modérateur
Dernière intervention
29 janvier 2010
12
ok je finis mon prog actuelle et je te montre

pour l'enregistrement de rtf j'ai decouver RTFEditorKit je crois...
elle a l'air de bien marcher enfin bon je verrais ^^

je te tien au courant
Afficher les 31 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.