Remplacer un texte par une image dans un richtextbox

Contenu du snippet

Mettant kc la tete a trouver un moyen de remplacer des smiley texte par leur homologue graphique g reussi a faire un ptit code.
je vous le passe car cela vous sera peut etre utile ...

Il fo minimum un control picturebox (picture1, ....) sur une form avec une image prechargée et un richtextbox (richtextbox1)

Source / Exemple :


Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

private sub remplace(texte as string)
    dim remp as string
    remp = " le texte a remplacer par l'image "       ' /!\  le premier charactere doit etre identhique a toutes les chaines a remplacer
    Dim dep As Long
    Dim l
    Dim temp
    dep = 0
    For l = 1 To Len(texte)
        temp = Mid$(texte, l, 1)
        If temp = mid$(remp,1,1) Then
            Clipboard.Clear
            
            If Mid$(texte, l, len(remp)) = remp Then
                Clipboard.SetData Picture1.Picture
                SendMessage RichTextBox1.hWnd, &H302, 0, 0
                dep = len(remp) - 1
            End If
            ' otan de comparaison ke necessaire
            ...
            ...
        Else
            If dep = 0 Then
                RichTextBox1.SelText = temp
            Else
                dep = dep - 1
            End If
        End If
    Next l
end sub  

' pour appeler le sub: remplace " votre texte a analiser "

Conclusion :


bon si vous avez d bugz signalé les car g adapté le code a celui ke g fait ! pr kil soit utilisable par tous !

il est pas super rapide donc si vs avez dotre soluce faite les moi parvenir a toflem@free.fr svp.
merci par avance

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.