Ym-light-wordpad tableau images et surlignage

Description

[VB6] Un p'tit WordPad (1 de plus) mais avec fonctions insérer un tableau, surlignage grâce à la manipulation du code rtf.

Ce "module" sera inséré en version complète dans ymBase avec impressions, champs publipostage, etc... Certaines fonctions ne sont donc pas disponibles (impression et aperçu notamment)

La méthode pour insérer des images est plus conventionnelle avec un copier (sendMessageLong)

Source / Exemple :


Pour le HighLight (surlignage),
C'est une gestion de la table des couleurs dans le rtf :
{\colortbl ;\red0\green0\blue0;...couleur RGB n°2..}

et ajout de par exemple :
\highlight2 Coucou !!!\highlight0
si 2 est la couleur n°2 dans la table

Attention, la table des couleurs est modifiée en permanence et automatiquement par vb6 dès qu'une couleur est modifiée. Il faut donc insérer la couleur si elle n'existe pas, ajouter l'appel à la couleur (highlight# ou cf#... etc) et seulement après affecter le richTextBox.textRtf (sous peine de voir la nouvelle couleur disparaître si elle n'est pas utilisée!)

Pour le tableau, c'est un peu plus lourd mais plus facile à faire :

Voyez la source ;-)

Conclusion :


J'ai trouvé intéressant le travail sur le code rtf pour l'insertion des tableaux et du surlignage. (pas de méthode copier coller). Vous pouvez ainsi facilement éditer une matrice (FlexGrid) dans un rtf -> fonction InsertTabl()) Pour ajouter des données dans le tableau, recherchez dans le code :

'ajouter ici la chaîne de la cellule éventuellement

En espérant que cela vous sera utile.

Je pense que l'on pourrait aller plus loin dans l'insertion de code rtf mais on se heurte à des incompatibilités entre le code rtf pur et l'interprétation dans un RichTextBox via vb6 (par exemple, je n'arrive pas à coloriser les lignes du tableau ou changer leur épaisseur alors que les commandes existent et fonctionnent dans un vrai WordPad). Il y a peut-être une dll à référencer au projet, mais je n'ai pas encore trouvé. Si quelqu'un a l'info...

Voyez la "bible" sur le rtf :
http://msdn.microsoft.com/library/?url=/library/en-us/dnrtfspec/html/rtfspec.asp?frame=true?frame=true

Cordialement,
ym_trainz

Codes Sources

A voir également

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.