Touche entrée et RichTextBox

Signaler
Messages postés
24
Date d'inscription
lundi 24 février 2003
Statut
Membre
Dernière intervention
28 octobre 2004
-
Messages postés
2
Date d'inscription
mardi 24 août 2004
Statut
Membre
Dernière intervention
2 septembre 2004
-
Salut !

Je devellop un client pour un chat. J'ai donc dans un form 2 richtextbox, une pour l'envoie et l'autre pour la reception de messages.
Je voudrais que la touche entré signale l'envoie du text tapé.
Je fais gere donc l'evenement "OnKeyPress" et je verifie si le caractere ascii est 13. Si c'est le cas alors j'envoie le message.

Mais en faisant ceci, j'ai un "\n" de trop.

Comment faire donc pour eviter cette ligne vide en trop ?

Merci de votre aide...

5 réponses

Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
92
si l'introduction du saut de ligne se produit avant le declenchement de l'event, va falloir l'enlever manuellement

si jamais il se produit apres, verifie si l'EventArg fourni ne permet pas ce que j'appellerais une interruption de l'action normale (ici insertion du saut de ligne)

Cocoricoooooooo !!!!
Messages postés
656
Date d'inscription
mercredi 22 août 2001
Statut
Membre
Dernière intervention
11 mars 2005
13
Puor ne pas avoir ce caractère indésirable, il faut changer la facon dont tu récupère la ligne de ton richtextbox:

if (e.KeyCode == Keys.Return)
{
     string laligne = richTextBox1.Lines[0];
}


[Membre du Labo .NET]
Messages postés
50
Date d'inscription
mardi 21 octobre 2003
Statut
Membre
Dernière intervention
13 septembre 2008

Salut,

En fait, j'utilise egalement le format rtf du richTextBox.
Et après kk verifications, c'est bien le rtf qui me rajoute un "\n" en plus.
En ajoutant seulement la propriété .Text du richTextBox, je n'ai pas de ligne en plus.
Mais en ajoutant la propriété .Rtf, alors le probleme apparait.

Je me suis donc dit, qu'il fallait que j'enleve à la main cette ligne de trop.

Est-ce que kk1 a une idée ... ?

Merci de votre aide.
Messages postés
24
Date d'inscription
lundi 24 février 2003
Statut
Membre
Dernière intervention
28 octobre 2004

Re,

Je pense avoir trouver une parade. En fait, il faudrais passer par un bouton "Send", qui lorsque le click dessus effectue l'envoie du message. Et en mettant ce bouton en tant que "AcceptButton" du form, ca passe.

Mais je voudrais que ce bouton n'apparaisse pas. Alors j'ai mis la propriete "visisble" a false. Mais cela ne marche plus...

Comment faire donc pour que ce bouton soit actif tout en etant invisible ?

Merci de votre aide.
Messages postés
2
Date d'inscription
mardi 24 août 2004
Statut
Membre
Dernière intervention
2 septembre 2004

Bonjour

J'ai eu le meme soucis que toi !
J'ai bidouille en cachant mon bouton (avec la propriete Visible = true) sous un panel (mon formulaire est compose de plusieurs panels.
Si je trouve autre chose, je ne manquerai pas de vous le faire savoir
@+