Les retours chariots ne sont pas pris en compte dans le textbox

Résolu
cs_marco62118 Messages postés 176 Date d'inscription mercredi 7 avril 2004 Statut Membre Dernière intervention 1 avril 2013 - 1 août 2009 à 19:41
cs_marco62118 Messages postés 176 Date d'inscription mercredi 7 avril 2004 Statut Membre Dernière intervention 1 avril 2013 - 2 août 2009 à 09:59
bonsoir à tous
dans un textbox je charge le contenu d'un fichier texte, dans lequel il y a des "chr(13)", mais malheureusement le texte est affiché à la queu lele sans retour à la ligne. comment faire pour voir ces retours à la ligne.
je ne veux pas utiliser richtextbox pour ne pas augmenter les fichiers de difusion.
merci pour votre aide
A voir également:

15 réponses

jmf0 Messages postés 1566 Date d'inscription mardi 26 décembre 2000 Statut Membre Dernière intervention 5 avril 2013 8
1 août 2009 à 21:43
Bonjour,

Bien évidemment, la propriété Multiline est à mettre à True.

Mais si ton fichier texte n'utilise que des Chr(13) pour assurer les alinéas, il convient de remplacer (fonction Replace) les Chr(13) par des VbCrlf.
3
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
1 août 2009 à 20:46
Salut,

Met la propriété Multiline de ton textbox sur 'true'

@+ Mayzz.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
1 août 2009 à 22:00
vbCrLf est lié au réf vb6, tu peux par contre faire :

Text = Replace(Text, Chr(13), Chr(10) & Chr(13))

Uniquement si ton texte ne contient que des chr(13) à la place des retrours chariot.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
CodeIX Messages postés 60 Date d'inscription jeudi 30 avril 2009 Statut Membre Dernière intervention 28 novembre 2009
1 août 2009 à 22:10
Tu n'a qu'a mettre une condition qui fait que lorsque tu rencontre un caractere specifique dans une chaine tu ajoute un retour de ligne.

Avec "vbCrLf":
Exemple:
outputText &= vbCrLf

Et je crois qu'il existe aussi Environnement.NewLine ou quelques choses comme ca.
0

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

Posez votre question
jmf0 Messages postés 1566 Date d'inscription mardi 26 décembre 2000 Statut Membre Dernière intervention 5 avril 2013 8
1 août 2009 à 22:15
VbNewline
0
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
1 août 2009 à 23:57
Les constantes vbCRLF, vbNewLine et la fonction Chr sont des fonction de compatibilité à VB6. Pour le passage à la ligne, mieux vaut utiliser Environnement.NewLine (si c'est pour du code managé, autant tout faire dans les règles de l'art ... pas besoin de faire un mix VB6/.NET)

---
VB.NET is good ... VB6 is better
0
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
2 août 2009 à 00:12
Moué en fait tout le monde dit ca, mais la réf à vb6 est purement natif au framework... Tout le monde dit qu'il faut la décocher, certes, c'est mieux de perdre les mauvaise habitudes, mais en pratique c'est pas si dramatique.

Sans compter que tout le monde parle de cette réf. dès que l'on pointe un vbcr, mais ce n'est pas le cas pour msgbox, instr, mid, Len etc...

@+

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
2 août 2009 à 00:27
Disons qu'il faut profiter d'un des seuls avantages (à mon sens) de VB.NET par rapport à VB6 : il est entièrement orienté objet. Les fonctions de la réf. Microsoft.VisualBasic ne suivent pas du tout cette logique.

---
VB.NET is good ... VB6 is better
0
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
2 août 2009 à 00:42
Oué.. Pour quelques fonctions basiques et quelques constantes, on ne peut pas vraiment comparer...

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
2 août 2009 à 01:22
(première réponse bonne, pas mal de participations, vous vous battez pour aider? )


sans vouloir lancer le débat, (interessant mais déjà évoqué tellement de fois) : perso je conseille aussi de décocher
(tant pour vbnewline que msgbox et toute la clique, pour ma part en tout cas!)

managé oui, ce n'est pas du "vb6" derrière, on est d'accord
seulement vb6 en 1997
vb.net est sorti en 2002 (il me semble)
la version DOTNET (je dis ici "version" volontairement) a alors été dotée d'un "outil" pour forcer plus ou moins les dev à quitter vb6

magie, cet outil permet de coder en dotnet (et donc ensuite d'être forcé à suivre les framework sans rétro-compatibilité, même avec du retard... ihi) tout en gardant notre "vieille syntaxe"

vb2008..., cet "outil" (oui je parle évidemment de la ref ms.visualbasic) est toujours présent, car trop de dev n'ont pas encore appris (même depuis 2002!!) à coder en vb.net (langage, là)

mais si MS se dit pour vb2010 ou vb2012 "bon ok, vb6 a plus de 15 ans, presque plus d'appli vb6 ne tourne, l'ide n'est plus installable sur les récentes plateformes, et dotnet a 10ans ; on y est : plus de référence (et donc de syntaxe) à ms.vb dans le framework 4.x"

j'suis curieux de voir le gars qui code depuis 10 ans soit disant en dotnet et qui va mettre une heure à faire un messagebox.show("hello world")....
j'exagère à peine quand on lit certaines questions, il faut se l'avouer

juste parce que c'est coché par défaut? ou parce qu'il n'est jamais facile de changer de langage...


(oui, utiliser cette syntaxe... le résultat n'est pas sale puisque managé. mais quand on change de langage, on accepte CE langage logiquement, non?)

mais bon, çà n'engage que moi, fervent défenseur de vb6
(même si parfois..., pour me forcer )

bonne soirée à tous
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
2 août 2009 à 01:34
je rebondis sur une de tes réponses mayzz :

vbCrLf est lié au réf vb6, tu peux par contre faire :
Text = Replace(Text, Chr(13), Chr(10) & Chr(13))


en vb6 (thème de la question), comme dans tout langage de toute façon, on préfèrera utiliser une constante qu'une fonction (pas de calcul inutile)

chr(10) c'est vb lf => LineFeed
chr(13) c'est vbcr => CarriageReturn
la terminaison de ligne + retour c'est bien chr$(13) & chr$(10), mais on predra la constante directement (vbcrlf), comme le conseillait jmf0 (salut)

voilà juste pour la petite explication, pas vitale mais bon...

rappel : de toute façon ici le remplace ne semble pas utile
0
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
2 août 2009 à 01:45
Oup's désolé !

En tous cas en ce qui concerne ms.visualbasic, pour ma par si je m'en sers toujours ce n'est pas à cause des réflèxes vb6 que j'ai d'ailleur perdu depuis un moment (je m'en rend compte dès que je remet la main à la patte), mais parce que c'est plus rapide, vbcrlf et environement.newline, ou encore msgbox et messagebox.show, ya pas photo, je me dis que cela raccourci mon code.

Si demain elle devait être supprimé cela ne me gènerais pas le moins du monde, je prendrais l'habitude des fonctionnalités .Net.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
2 août 2009 à 04:24
Mon grain de sel
Pourquoi parlez-vous de .Net alors que la question est dans la catégorie VB6 ?
Pour une fois qu'un membre prend la peine de bien choisir la catégorie ...
0
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
2 août 2009 à 08:18
C'est pas bête, ce que tu dis là Jack ... (j'dis aux autres de lire la catégorie dans laquelle ils se trouvent et je le fais même pas moi-même )

---
VB.NET is good ... VB6 is better
0
cs_marco62118 Messages postés 176 Date d'inscription mercredi 7 avril 2004 Statut Membre Dernière intervention 1 avril 2013 1
2 août 2009 à 09:59
bonjour à tous
et merci pour votre participation
Oui c'est bien parceque dans les texte que j'avais créé je n'avais mis que "chr(13)" comme retour chariot, je n'y voiyais pas de différence car dans un msgbox le texte s'affiche bien avec un retour à la ligne, mais pas dans un textbox.
Pour votre discussion entre vb6 donet etc... moi je suis qu'un amateur, je me suis mis au vb6 depuis plusieur années, mais je trouve tellement compliqué l'apprentissage et l'utilisation d'un nouveau langage (d'ailleur il suffit de voir que même en vb6 je ne suis pas encore au point) que je ne pense plus évoluer
encore merci
0
Rejoignez-nous