IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

[VB.NET] Comment envoyer du texte enrichi(couleurs,style...)


Sujet :

Windows Forms

  1. #1
    Inactif
    Profil pro
    Inscrit en
    Février 2005
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 27
    Points : 11
    Points
    11
    Par défaut [VB.NET] Comment envoyer du texte enrichi(couleurs,style...)
    Bonjour, Excusez moi de reposter pratiquement le mm topic mais dans mon 1er topic je m'étais mal exprimé...

    Tjrs dans le cadre de mon client/serveur ...

    J'ai mis une FontDialog pour proposer de changer la police du texte a envoyer ( textbox4.text ). Apres avoir choisi sa police ou/et sa couleur, cela s'applique dirrectement au texte à envoyer ( dans la textbox4 ). MAintenant je voudrais afficher ce texte modifié dans ma RichTextBox ( la où est écrit la conversation... ) puis ( le plus dur ), l'envoyer au serveur ( ou au client, selon qui l'envoie ) à l'aide de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
                    buffer = System.Text.Encoding.UTF8.GetBytes(TextBox4.Text)
                    socketclient.BeginSend(buffer, 0, buffer.Length, socketFlags.None, AddressOf SendCallback, socketclient)
    Comment faire ???

    Merci à tous ceux qui vondront bien répondre

  2. #2
    Membre actif
    Avatar de troxsa
    Inscrit en
    Novembre 2004
    Messages
    386
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Novembre 2004
    Messages : 386
    Points : 264
    Points
    264
    Par défaut
    Echange ta texte box par RichTextBox

  3. #3
    Inactif
    Profil pro
    Inscrit en
    Février 2005
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 27
    Points : 11
    Points
    11
    Par défaut
    c'est ce que j'ai fais mais ca change rien... j'arrive pas a envoyer et a afficher le texte enrichie ( style, police.... choisie dans la FontDialog )

    Merci

  4. #4
    jab
    jab est déconnecté
    Rédacteur
    Avatar de jab
    Homme Profil pro
    SharePoint developpeur
    Inscrit en
    Février 2004
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : SharePoint developpeur
    Secteur : Service public

    Informations forums :
    Inscription : Février 2004
    Messages : 1 173
    Points : 4 339
    Points
    4 339
    Par défaut
    Tu ne tois pas envoyer la propriété Text de ta RichTextBox mais la propriété RTF. Tu envoies alors aussi le code Rtf sinon non. De l'autre côté, tu dois évidemment ajouter le Text en tenant compte du fait qu'il s'agit de Rtf.

  5. #5
    Inactif
    Profil pro
    Inscrit en
    Février 2005
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 27
    Points : 11
    Points
    11
    Par défaut
    Ah ok ... j'ai changer la propriété ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     buffer = System.Text.Encoding.UTF8.GetBytes(richtextbox2.rtf)
                    socketclient.BeginSend(buffer, 0, buffer.Length, socketFlags.None, AddressOf SendCallback, socketclient)
    Mais alors il s'affiche un truc bizarre du genre :

    {\rtf1\ansi\ansicpg1252\deff0\deflang1036{\fonttbl{\f0\fnil\fcharset0 Microsoft Sans Serif;}}
    \viewkind4\uc1\pard\b\i\f0\fs29 vrevevrv\par
    }

    Est ce qu'il faut configurer le RTF ?

    Je comprends pas..

    Merci jab

  6. #6
    jab
    jab est déconnecté
    Rédacteur
    Avatar de jab
    Homme Profil pro
    SharePoint developpeur
    Inscrit en
    Février 2004
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : SharePoint developpeur
    Secteur : Service public

    Informations forums :
    Inscription : Février 2004
    Messages : 1 173
    Points : 4 339
    Points
    4 339
    Par défaut
    Le code que tu vois est bien le code RTF. Au momemrnt ou tu l'ajoutes dans ton CtrlRtf côté récepteur, il faut trouver un moyen de l'ajouter dans le Rtf et non pas simplement comme du texte. Une solution serait peut-être d'assigner ton contenu à la propriété SelectedRtf.

  7. #7
    Inactif
    Profil pro
    Inscrit en
    Février 2005
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 27
    Points : 11
    Points
    11
    Par défaut
    J'ai pas tres bien compris ce que je devais faire... le code RTF que je vois s'affiche dans la RichTextBox du chat ( RichTextBox4 ) du coté de celui qui l'envoie.. ( et du coté recepteur effectivement il voi aussi le code ).

    Mais la je voudrais juste savoir comment afficher le texte RTF de la RichTextBox2 ( la ou on ecrit les messages ) dans la RichTextBox4 sans oublier que le modification du texte ont été faite avec une FintDialog ...

    Apres je m'occuperais de l'envoie...

    Merci de ton aide !!!

  8. #8
    jab
    jab est déconnecté
    Rédacteur
    Avatar de jab
    Homme Profil pro
    SharePoint developpeur
    Inscrit en
    Février 2004
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : SharePoint developpeur
    Secteur : Service public

    Informations forums :
    Inscription : Février 2004
    Messages : 1 173
    Points : 4 339
    Points
    4 339
    Par défaut
    Comment ajoutes-tu le texte dans ta rtf ? Montre un peu le code.

  9. #9
    Inactif
    Profil pro
    Inscrit en
    Février 2005
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 27
    Points : 11
    Points
    11
    Par défaut
    Voila ce que j'ai fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
      FontDialog1.ShowColor = True
            FontDialog1.Font = RichTextBox2.Font
            FontDialog1.Color = RichTextBox2.ForeColor
            If FontDialog1.ShowDialog() <> DialogResult.Cancel Then
                RichTextBox2.Font = FontDialog1.Font
                RichTextBox2.ForeColor = FontDialog1.Color
     
            End If
    ' code de la fontdialog permettant a l'utilisateur de choisir ca police, couleur ...
     
      pseudo = TextBox2.TextLength
                Dim start2 As Integer = RichTextBox1.TextLength
                RichTextBox1.AppendText(TextBox2.Text & "  dit :" & ControlChars.CrLf)
                RichTextBox1.SelectionStart = start2
                RichTextBox1.SelectionLength = pseudo + 7
                RichTextBox1.SelectionFont = New Font(RichTextBox1.SelectionFont, _
                           RichTextBox1.SelectionFont.Style + FontStyle.Bold)
     
    ' code permettant d'afficher le pseudo + "dit : " en gras 
     
     
     super = TextBox4.TextLength
                Dim start3 As Integer = RichTextBox1.TextLength
                RichTextBox1.AppendText(TextBox4.Text)
                RichTextBox1.SelectionStart = start3
                RichTextBox1.SelectionLength = super
                RichTextBox1.SelectionFont = TextBox4.Font
                RichTextBox1.SelectionColor = TextBox4.ForeColor
                RichTextBox1.AppendText(ControlChars.CrLf)
                RichTextBox1.AppendText(ControlChars.CrLf)
     
    ' Code permettant d'afficher ( en theorie ) le texte que l'utilisateur a saisie en fonction des modifications qu'il a effectuer au niveau de la FontDialog..
    mais la 3eme partie du code ne marche pas ca affiche des trucs bizarres...

    Par contre si je vire "RichTextBox1.selectionColor = TextBox4.ForeColor " ca marche ...[ Mais ca prend en modification que le Font ]

    Et si je vire "RichTextBox1.selectionFont = TextBox4.Font" ca marche aussi [ mais ca prend en compte que la couleur ]

    Mais les 2 ensembles il veut pas....

    Pourquoi ??

    merci Jab

  10. #10
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 310
    Points : 157
    Points
    157
    Par défaut
    Par défaut l'attribut de Font c'est couleur.

    Mais normalement tu peux pas affecter un type FONT

    du es obligé de faire

    font.color = ta coleur
    font.bold = true
    font.underline = bidule

    Ou alors je sais pas comment affecter une variable de type font au font d'un objet car ca a toujours planté chez moi

  11. #11
    Inactif
    Profil pro
    Inscrit en
    Février 2005
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 27
    Points : 11
    Points
    11
    Par défaut
    Je dois remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     RichTextBox1.SelectionFont = TextBox4.Font
                RichTextBox1.SelectionColor = TextBox4.ForeColor
    par ce que tu me dit ???

    Mais le probleme c'est que RichTextBox1.font.color = ma couleur
    " color " n'est pas un membre de "font" donc on peut pas faire ca...

    Merci

  12. #12
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 310
    Points : 157
    Points
    157
    Par défaut
    Je connais pas trop RichTextBox enfin pas les propriétés Codebehind je lui ai toujours mis du RTF dans les fesses pour avoir du Bold ou Color

  13. #13
    Inactif
    Profil pro
    Inscrit en
    Février 2005
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 27
    Points : 11
    Points
    11
    Par défaut
    et est ce que avec la propreiété RTF tu peux , a partir des modifications du texte avec une FontDialog, afficher du texte " enrichie " dans une RichTextBox , a partir de ce que l'utilisateur a saisie dans la TextBox ou RixhTextBox ????
    ( en gros ce dont j'essaye de faire depuis des jours )

    En tt cas si vous avez d'autres idées elles serint les bienevues !

  14. #14
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2003
    Messages : 105
    Points : 134
    Points
    134
    Par défaut
    Citation Envoyé par SoaB
    du es obligé de faire

    font.color = ta coleur
    font.bold = true
    font.underline = bidule

    Ou alors je sais pas comment affecter une variable de type font au font d'un objet car ca a toujours planté chez moi
    Deux petites corrections :
    1) l'objet Font n'a pas de propriété Color
    2) on ne peut pas assigner directement les différents styles (bold, italic, etc.). CF ma précédente réponse dans ce Post.

    a+ !

  15. #15
    Inactif
    Profil pro
    Inscrit en
    Février 2005
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 27
    Points : 11
    Points
    11
    Par défaut
    j'ai lu ton post mais je vois pas trop le rapport avec le mien ... De plus moi j'ai aps de probleme pour mettre le etxte en gras, italic.... ni pour la couleur mais si je veut mettre les 2( style et couleur ) et bah la ca marche plus....

    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/01/2006, 14h18
  2. Comment envoyer du texte dans une fenêtre spéciale ?
    Par Coussati dans le forum Composants VCL
    Réponses: 11
    Dernier message: 25/10/2005, 09h00
  3. [VB.NET] Comment envoyer un texte modifié(couleurs,style...)
    Par fdiedler dans le forum Windows Forms
    Réponses: 8
    Dernier message: 14/03/2005, 18h11
  4. [Rave5] Comment envoyer un text ver un label
    Par pacs dans le forum Rave
    Réponses: 2
    Dernier message: 03/03/2005, 14h55
  5. [VB.NET] comment écrire du texte avec opengl?
    Par ero_senin dans le forum OpenGL
    Réponses: 2
    Dernier message: 17/01/2005, 13h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo