JPNFODIZ EDITEUR DE TEXTE MIXTE VERSION 1.5

violent_ken Messages postés 1812 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 26 octobre 2010 - 30 oct. 2006 à 11:24
Sechaud Messages postés 288 Date d'inscription jeudi 28 octobre 2004 Statut Membre Dernière intervention 3 janvier 2017 - 27 avril 2007 à 08:18
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/40142-jpnfodiz-editeur-de-texte-mixte-version-1-5

Sechaud Messages postés 288 Date d'inscription jeudi 28 octobre 2004 Statut Membre Dernière intervention 3 janvier 2017
27 avril 2007 à 08:18
J'ai trouvé un bug dans la fonction Rechercher. Quand le texte est long le programme plante.
Pour corriger il faut changer:
Dim Pos As Integer
par
Dim Pos As Long
cs_nico1610 Messages postés 395 Date d'inscription jeudi 26 août 2004 Statut Membre Dernière intervention 19 juin 2009 1
31 oct. 2006 à 01:46
(J'ai pas encore noté car ... j'ai toujours pas regardé ta source :s )
cs_nico1610 Messages postés 395 Date d'inscription jeudi 26 août 2004 Statut Membre Dernière intervention 19 juin 2009 1
31 oct. 2006 à 01:45
Et alors ?

C'est bien une uzine a gaz !!

En tout cas je suis content que mes conseils tapé a la va vite te servent !
(YY'as des jours c'est l'illumination entre deus series TV ;-P )
Sechaud Messages postés 288 Date d'inscription jeudi 28 octobre 2004 Statut Membre Dernière intervention 3 janvier 2017
30 oct. 2006 à 18:54
Merci NICO 1610 pour ces bons tuyaux.
J'ai trouvé dans mes archives, ce qu'il fallait pour faire du multi UNDO/REDO
J'ai donc ajouté 2 boutons et on peut faire pleins d'annuler cosécutifs puis revenir à l'état initial
Pour le moment je n'ai traité que la partie RichTextBox.
Si je peux faire la partie texte, je ferai une mise à jour.
Par contre après numérotation, on ne revient pas.
Il faudrait une touche supplémentaire pour remettre une à une
les lignes sans leurs numéros.C'est très facile à faire mais mon
programme va devenir une usine à gaz.
cs_nico1610 Messages postés 395 Date d'inscription jeudi 26 août 2004 Statut Membre Dernière intervention 19 juin 2009 1
30 oct. 2006 à 12:58
Pour le UnDo le plus simple (enfin le plus efficace) c'est un moniteur d'événement qui enregistre TOUTES les actions, mais pour ca il faut que tes actions puisse être inversable juste en connaissant l'action faite et un simple cache texte. Ensuite tu numerotes les actions en question (exemple copier = 1; coller = 2; ...) et apres en fonction du type et du cache tu peut revenir en arriere sans problème.

Je te donne cette astuce sans avoir regarder ta source, donc je ne sais pas si c'est applicable a ta source, mais c'est la solution la plus éfficace, et qui est utilisé par les meilleurs soft (exemple : ADOBE PREMIERE PRO qui permet d'annuler l'action que tu veut ! un truc de malade)

Enfin voila, en espérant que ce commentaire t'aidera !
violent_ken Messages postés 1812 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 26 octobre 2010 2
30 oct. 2006 à 11:58
Salut,

pour les images en copier/coller, cà marche, bien sur, mais c'est plus sympathique je trouve de pouvoir sélectionner le fichier et en avoir un aperçu avant de l'insérer.

Pour les SendKeys, disons que la simulation du clavier n'est jamais la meilleure méthode.
Personnellement, je préfère

On Error Resume Next
Clipboard.SetText RTF.SelRTF
RTF.SelText = vbNullString

pour couper du texte, par exemple.
Cela dit, il est vrai que Ctrl+C permet aussi de copier les autres objets du RTF. Donc c'est pratique, et c'est vrai que çà marche très bien...

@+
Sechaud Messages postés 288 Date d'inscription jeudi 28 octobre 2004 Statut Membre Dernière intervention 3 janvier 2017
30 oct. 2006 à 11:53
Merci Violent_Ken pour tes remarques et conseils.
Je sais que le Undo n'est pas parfait et j'ai pu constater en étudiant divers éditeurs que presque tous, ont des problèmes avec
Undo.
Il faudrait implanter un multi Undo.Mais là!!!
Je ne comprends pas ta critique sur les SendKeys, car ça marche
sans broncher.
Pour les autres idées je vais voir, mais j'ai trouvé sur VB Frnce
des éditeurs qui le font.Par contre on peut très bien introduire des images par copier coller en mode RTF.
violent_ken Messages postés 1812 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 26 octobre 2010 2
30 oct. 2006 à 11:24
Salut, ma foi sympathique comme editeur de texte ;)


Cependant :
-limitation du Undo (par exemple, impossible de revenir en arrière après avoir mis les numéro de ligne ...etc.)
-pas top les SendKeys pour couper/copier/coller...
-Frame4 est mal positionné
-MS LineDraw bug un peu pour certains caractères (voir exemple)


Quelques améliorations possibles :
-ajouter la coloration syntaxique pour le VB (c'est toujours bien)
-ajouter une interface MDI
-un aperçu avant impression
-possibilité d'ajouter des images dans le RTB (par sélection et aperçu du fichier)

@+