Retour à la ligne ( sans multiligne)

babyboydu92 Messages postés 9 Date d'inscription mardi 18 octobre 2005 Statut Membre Dernière intervention 12 août 2007 - 10 janv. 2006 à 00:40
violent_ken Messages postés 1812 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 26 octobre 2010 - 10 janv. 2006 à 20:43
Bonjour,

Dans une application avec une textbox (mono ligne), je souhaite faire un retour chariot.



Je voudrai que lorsque la ligne de la texbox est remplit, que le curseur revienne en début de ligne, ceux qui me permettrai d'écraser la phrase précédente.

J'utilise les fonctions "vbcr" ou Chr$13 à la fin de chaque phrase, mais à chaque fois j'obtiens quelque chose qui ressemble à sa :
"ma phrase"|

quelqu'un peu t'il me sortir de cette impasse
Merci.

9 réponses

jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
10 janv. 2006 à 00:52
Bonsoir,

Soit tu uitlises un contrôle RichTextBox où tu mets la propriété Multiligne du TextBox à True, elle est faite pour ça.



jpleroisse



Si une réponse vous convient, cliquez Réponse Acceptée.
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
10 janv. 2006 à 01:33
salut,

"Je voudrai que lorsque la ligne de la texbox est remplit"

çà veut dire quelquechose? remplie genre MaxLength atteind? ou lettres au bout à droite?



il y a une propriété multiligne pour le TextBox classique. aucun code taper....

PCPT [AFCK]
0
violent_ken Messages postés 1812 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 26 octobre 2010 2
10 janv. 2006 à 10:44
Violent Ken

Salut !
Soit tu mets MultiLine=true à ta TextBox
Soit tu utilise "1ere ligne" & vbNewline & "2eme ligne"
@+
0
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 24
10 janv. 2006 à 14:02
Hum... Comme en chat tu veux dire !
En somme, tu veux que dès que tu valides un texte via la touche "Enter", l'ancienne phrase disparaisse et que donc, le curseur revienne au début...

C'est bien ça ou pas ???
Parce qu'il est vrai que tu n'es pas très clair!!!
Et pense à toujour nous indiquet dans quel langage tu codes...

Enjoy

<hr size="2" width="100%">
( Si une réponse vous convient, cliquez sur le bouton "Réponse acceptée". )
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
babyboydu92 Messages postés 9 Date d'inscription mardi 18 octobre 2005 Statut Membre Dernière intervention 12 août 2007
10 janv. 2006 à 18:19
Ouai c'est exatement sa, tu as tout compris ! et je codes en VB6...
Sais tu comment je peux atteindre ce fonctionnement ?

Merci pour vos réponses
0
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 24
10 janv. 2006 à 19:15
Réponse pour super débutants!!! Si tu t'étais donné la
peinne de chercher juste un peu tu aurais trouvé sans trop de problèmes
je pense!!!

Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
'-----------------------------------------------
'Si tu veux faire des choses avec le texte entré
'fait-les ici...
...
varAncienTexte = Text1.Text
...
'-----------------------------------------------
Text1.Text = ""
KeyAscii = 0
End If
End Sub

Bon, ceci dit, ça mérite quelques explications :
Dans "Private Sub Text1_KeyPress(KeyAscii As Integer)" Text1 est le nom de ta zone de saisie.
Ne change rien.
C'est une procédure dite "événementielle". Elle se déclanche lors de l'événement "KeyPress". Autrement dit, dès qu'un utilisateur a appuyé sur une touche (enfoncé le bouton puis relaché le bouton = presser le bouton). Donc, tout le code qui sera dedans sera exécuté à ce moment là (et uniquement à ce moment là !!!
La touche sur laquelle a appuyé l'utilisateur a un code transmit par le VB à la procédure via l'argument "KeyASCII". Autrement dit, toutes les touches on un code ASCII. Et le code ASCII de la touche qui a été pressée se trouve dans cette "variable" (argument)

On teste si ce code est bien celui de la touche "Return" ("Enter" quoi!). Pour ça, on utilise une constante VB. Autrement dit, "vbKeyReturn" est une "variable" "constante" (donc pas variable ;-) que le VB possède en interne. Cette constante VB a pour valeur le code ASCII de la touche "Return". Pourquoi une constante VB plutot que la valeur directement ??? Tu pourrais mettre la valeur si tu voulais mais à condition de t'en souvenir!!! Et comme ont est pas tous des machines à mémoriser des infos inutiles, ben... on utilise ces constantes. Remarque que le VB n'a pas que cette constante en "mémoire", il a toutes les autres touches du clavier. Du coup, si tu écris "vbKey" ("Key" en anglais = Clef, Touche), il te suffit de rajouter le nom (originel, pas en français!!!) de touche pour y faire référence. Par exemple : vbKeyF1 pour la touche "F1", vbKeyShift pour la touche Majuscule, vbKeyBack pour la touche Del (retour arrière), vbKeyB pour la lettre "B", ..., ..., ...

Donc, on a :
Si touche_pressée_par_l'utilisateur = toucheReturn Alor
fait tout ça
Fin du Si

Dans le "fait tout ça" tu dois mettre ce que tu veux faire. Ben wai, c'est pas tout d'entrer des lignes de texte puis de les effacer mais faut aussi en faire quelque chose (des lignes de texte) !!! C'est donc ici que tu dois mettre ce que tu veux leur faire faire.

Ensuite, on efface le contenu de la zone de texte, tout simplement en faisant appel à sa propriété Text (qui fait référence au texte qui est dedans!). On efface en lui assignant un texte vide (=""). Si on avait voulu lui mettre un texte par défaut ont aurait fait (="texte par défaut"), mais là, on n'a rien mis pour effacer la zone. Mais quoi qu'on y mette, comme ça, le nouveau texte remplacera toujours l'ancien (y'a bien une technique pour éviter cela mais là n'est pas le sujet).

Après avoir fait ça, on assigne 0 au code de la touche pressée afin que cette même touche de soit pas renvoyée pour être affichée (ce qui, pour la touche Enter, causerait une exclamation [sonor tout du moins] de la part de Windows!). Si tu veux voir ce que ça donne sans cette ligne, met la en commentaire (en placant une apostrophe au début).

Diable, est-ce qu'avec toutes ces explications tu as pu avancer ???

Enjoy

<hr size="2" width="100%">
( Si une réponse vous convient, cliquez sur le bouton "Réponse acceptée". )
0
babyboydu92 Messages postés 9 Date d'inscription mardi 18 octobre 2005 Statut Membre Dernière intervention 12 août 2007
10 janv. 2006 à 19:45
Sa fonctionne, merci !
Et pour une réponse, sa c'est une réponse !
il est vrai que maintenant que tu m'à tout expliqué c'est très facile mais il fallait quant même le savoir !
Bonne soirée A++
0
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 24
10 janv. 2006 à 20:25
Ben fallait lire l'aide !!! (la MSDN... juste pour info!)

Enjoy

( Si une réponse vous convient, cliquez sur le bouton "Réponse acceptée". )
0
violent_ken Messages postés 1812 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 26 octobre 2010 2
10 janv. 2006 à 20:43
Violent Ken

C'est sur qu' apres une telle réponse, il serait de bonne augure de l'accepter !
@+
0
Rejoignez-nous