Detecter la dernière ligne d'un RichTextBox?

Résolu
kakenette Messages postés 218 Date d'inscription dimanche 1 mai 2005 Statut Membre Dernière intervention 15 novembre 2009 - 28 mai 2005 à 21:45
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 - 19 juin 2005 à 21:49
Jai un RichTextBox1 avec dedans :



Première ligne

Deuxième ligne

C la derniere ligne





Voila je suis vreiment débutante en VB, j'aurai voulu :



Private Sub RichTextBox1_Change()

End Sub





Faire un test la dedans qui prend la dernière ligne du RichTextBox1,
j'avais pensez remonter la chaine de charctère du RichTextBox1 et
s'areter au moment ou ya un retour a la ligne, prendre tout se qui est
après et le mettre dans une variable pour finire par :



If aaa= "C la derniere ligne" then msgbox "Ca marche !"







Merci pour votre aide.










kakenette

17 réponses

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
29 mai 2005 à 02:52
Salut
lol, c'est parce que le code fourni par redman est du vb.Net
Ta solution était bonne kakenette :
Pour retrouver les lignes, il suffit de détecter les coupures de paragraphe avec le vbCrLf.

Dim Tableau() As String
Tableau = Split(RTB.Text, vbCrLf)

et tu auras la 1ere phrase dans Tableau(0)
et la dernière dans Tableau(UBound(Tableau))

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
3
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
28 mai 2005 à 23:52
Met cette fonction dans le code de ton formulaire :



Private
Function LastLine(
ByVal RTB
As RichTextBox)
As
String



Dim Line
As
String



If RTB.Lines.Length > 0
Then


Line = RTB.Lines(UBound(RTB.Lines))



Else


Beep()


Line = "Pas de lignes !"



End
If



Return Line



End
Function

Puis créer un bouton dont le code est :


MsgBox(LastLine(RTB))

Voilà ! Si jamais ca marche pas dis le moi ! Bonne continuation !

Redman
0
kakenette Messages postés 218 Date d'inscription dimanche 1 mai 2005 Statut Membre Dernière intervention 15 novembre 2009 1
29 mai 2005 à 00:17
Ca marche pas :(



Ya "Beep()" et "Return Line" en rouge aussi



Sa me mais aussi une erreur ici :



If RTB.Lines.Length > 0 Then



Method or data member not found



....


kakenette
0
pazgal Messages postés 12 Date d'inscription samedi 30 avril 2005 Statut Membre Dernière intervention 11 mai 2006
29 mai 2005 à 00:21
Tu est bien sûre que ta richtextbox porte le nom : "rtb" ?



Au fait, j'en profite mais moi je cherche à trouver le numéro de la première ligne visible de la RTB.
0

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

Posez votre question
kakenette Messages postés 218 Date d'inscription dimanche 1 mai 2005 Statut Membre Dernière intervention 15 novembre 2009 1
29 mai 2005 à 00:22
Oui je suis sur ! si je change le nom il dit object required un truc du genre.

kakenette
0
kakenette Messages postés 218 Date d'inscription dimanche 1 mai 2005 Statut Membre Dernière intervention 15 novembre 2009 1
29 mai 2005 à 03:51
Ok merci ca marche nikel !
kakenette
0
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 24
29 mai 2005 à 05:02
Jack, franchement, t'es trop fort parfois!!! Je la connaissait pas encore celle là (Split)!!!

Un immense MERCI!!!



Ceci dit, je me demande s'il ne vaudrait pas mieux utiliser la variable VB "vbNewLine" plutôt que ce vieux "vbCrLf" ???
0
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
29 mai 2005 à 10:07
Je pensais que tu travailler en Vb.Net

Désolé !

Redman
0
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
29 mai 2005 à 10:21
pour >>> ScSami



If vbNewLine = vbCrLf Then

MsgBox "Yes, vbNewline And vbCrLf is the same thing"

End If


Daniel
0
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 24
30 mai 2005 à 02:41
Je ne suis pas d'accord avec toi Gobillot, car, quitte à sambler vouloir chipoter, la MSDN dit ceci :



"vbCrLf : Combinaison des caractères de retour chariot et de saut de ligne"



et




"vbNewLine : Caractère de saut de ligne spécifique à la plate-forme ;choix en fonction de la
plate-forme"



Ce qui, à mon sens, à son importance pour la ""portabilité"" du code!!!



Enfin, c'est vrai, je chipote quand même un peu



Enjoy
0
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
7 juin 2005 à 09:33
Redman
0
misterzinzin Messages postés 112 Date d'inscription vendredi 27 octobre 2000 Statut Membre Dernière intervention 26 janvier 2011 2
17 juin 2005 à 21:37
hum... la portabilite du code... whaip pk pas



juste une question visual basic ca tourne sur combien d'os ?

ben... un seul=> celui de chez microsoft... pas tres connu .. fenetre ou un truc du genre... ... ...

non sérieux chez microsft le CR et LF signifierons certainement tjs la
meme chose... un retour chariot! (ou ptetre que je me trompe... bon on
met un coeficient de certitude 3 pour pas perde des point...)



mais bon... parler de protabiliter de visual basic... c assez ... heu... débile (g pas trouvé d'autre mot)...

la portabilité en C... je veux bien... en C++ c sur aussi... en java (ca me ferais mal si on ne s'en preocupait pas)

mais pour les langage batard a la microsoft... ben c'est du (c)
crocrosoft... donc ca tourne sur du crocrosoft... et depuis dos
crocrsoft aime bien son cr lf... enfin moi je dis ca je dis rien...



tient en passant j'ai une blague sur les blonde... elle est bien bonne!

alors c'est une blonde qui... heu je peu pas dire la suite j'ai peur de vexer kakenette

lol non serieux ca fait bizarre de voire des fille sur des forum de prog... devrait y en avoir plus!

bon... je vous laisse



ps: sur ce... moi j'aime bien visual basic... et depuis peu... j'aime
bcp le java (j'en fait que depuis janvier au cour et c marrant! et ...
portable )

moi, le seul, l'unique, ZinZin
0
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 24
18 juin 2005 à 03:08
J'ai l'impression que t'es trop zinzin""les DOUBLES GUILLEMETS
""Mister"" !!! Alors oui, désolé de ne pas avoir eu d'autre mots sur le moment...



Et pourtant,
finalement je trouve que
ce mot convient parfaitement !!! C'est même toi qui m'a convaincu!

En effet, contrairement à ce que tu ""penses"",
le VB peut sortir par la fenêtre pour aller dans le froid où seuls les
pingouins peuvent encore survivre (zolies zoizos d'ailleurs! Dommage
qu'ils soient en voie d'extinction!). De plus, mais ça, c'est juste
pour ta culture personnelle, sache que non seulement il existe
plusieurs fenêtres, mais qu'en plus, il y a plusieurs types de
constructions qui peuvent les habiter... Et, sans vouloir être
désagréable, il me semblerait plutôt prétentieux de ta part si tu nous
avouait toutes les connaître !!! Je pense par exemples aux systèmes
asiatiques qui peuvent parfaitement ne pas connaitre nos CR et LF...



D'ailleurs, j'ai bien noté que les détails même les plus gros semblent
parfois t'échapper... Alors, juste pour info, et sans vouloir insulter
ton intelligence (logique + connaissances + ...), je tiens à te faire
remarquer que seul CR représente un retour chariot (je serais mal placé
pour te donner un cours d'anglais!) et non CrLf...



Sinon, pour le Java, sans vouloir lancer une nouvelle polémique, si tu
crois vraiment que ce ""machin"" est ""portable"", révise tes cours et
lance toi dans le Flash... y'a de l'avenir à très court terme,
j't'assure De plus, si y'a
bien un truc, mais alors UN TRUC dont JUSTEMENT, on ne doit pas se
soucier en Java, c'est bien de la portabilité du code !!!!!!!!!!!!!!
D'où d'ailleurs tous le problème ! Mais je suis d'accord avoir toi sur
un point... Pour apprendre à coder en ""
asembler"", il faut apprendre le C, y'a pas plus simple comme moyen détourné !!!
Enfin, moi, c'que j'en dis tu sais...




Mais bon, pour en revenir au vbCrLf et au vbNewLine, ce ne sont pas ici
des caractères ASCII !!! Non, ce sont des constantes VB !!! Du coup,
lorsque je parlais de ""portabilité"", j'entandais par là la migration
du code vers des versions différentes !!! Alors certes, le CrLf a de
bonnes chances de vivre encore quelque temps, mais comme les languages
semlent tous aller vers une perte sévère de leurs origines, y'a quand
même des chances qu'on le perde au profit de vbNewLine...

De plus, je n'ai fais que citer mot pour mot la MSDN qui est l'aide du VB (entre autre!) de crosoft.

Voilà, c'est ce que je voulais dire... désolé si j'ai pas été clair dans mes propos!



Alors maintenant que j'ai bien ""chipoté"" sur des ""détails"", je vous
fais la promesse d'essayer de devenir un peu plus grossier dans mes
""précisions"" et mes ""raisonnements"".



Merci de votre attention
0
misterzinzin Messages postés 112 Date d'inscription vendredi 27 octobre 2000 Statut Membre Dernière intervention 26 janvier 2011 2
18 juin 2005 à 13:59
1) cool... savais pas que vb ca tournait sur du linux... merci pour l'info (il est pas un peu "agressif" ton post ?)
2) si en plus il faut se soucier des asiatique ;-) commencons par aprendre le chinois!

3) java est portable! linux, windows, solaris... gsm (si si je te
jure)... voiture (je peut te le jurer aussi)... carte a puce (sisisi!)

heu... on doit pas se soucier de la portabilite du code (mais tu dis que ce n'est pas portable.. heu y a un bug la ?)

et en hava faut quand meme se soucier de la portabilité du code... \ en windows != / du linux ! (enfin ce que j'en dis)...

4) flash... whai pk pas si j'ai le temps j'y penserais (on s'éloigne du suget)

5) """Pour apprendre à coder en ""
asembler"", il faut apprendre le C"""

c'est nouveau ca ? a moin de vouloir comprendre ce qui se passe
en dessous du C ... je vois pas l'interet! (ou alors ct ironique ? lol)



rem: c'est pas mal l'assembleur... (mais on s'éloigne encore la)



6) un peu pointilleux sur le cr...

c'est sur cr fait un retour chariot...

et lf ??? ca serais pas un retour au debut de la ligne ? (bo ptetre)



7) pour faire chier...(poarceuq je suis zinzin...) en quoi une constante ne peut pas etre un caractere ascii ???


8) crosoft??? crocrosoft oui! (avec 2 croc car ca mord lol... on s'éloigne encore je sais!)



donc en resumé

1- si on ne prend que ce qui concerne ce post (vb)... ben j'ai tord (et je le reconnais)

ps: on utilise quoi pour lancer du vb sous linux ? ca serais gentil si tu me repondais



2- java est portable et il faut se soucier de la portabilité du code (et surtout du bytecode... pour faire malin)



3- faut pas s'énerver comme ca... l'humour est le meilleur bouclier... car il ne renvois pas les coup...



4- tout le monde s'en fou de ma blague sur les blonde ? lol


moi, le seul, l'unique, ZinZin qui vien d'apprendre qq chose sur l'interpreteur vb... trop cool
0
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 24
18 juin 2005 à 18:02
Oui, en effet, peut-être bien que mon post avait un
petit coté ""agressif"" et je m'en excuse... Faut dire aussi que mon
précédent ne méritait pas de tels remarques je trouves!!!



1) Bon, alors, j'en sais rien parce que je tourne pas sous Linux,
mais si j'ai bien compris, c'est "Crystal Raport" qui fait office de
VB... mais il se peut que je sois totalement à coté de la plaque!!!
Bref, a vérifier...

2) De toutes façons, pour le chinois, on a plus le choix!!! Enfin, moi je le préfère à l'anglais!!!

3/4) D'accord, mais sans la machine Java/Flash, y'a rien... Elle coût chère cette portabilité toute relative je trouve!!!

5) [cf. ton commentaire de profil] Tu sais, ce qui se passe
sous le C est la meme chose que sous le VB ou sous le tAPIs!!!
Autrement dit, tu n'as pas besoin de passer par le C pour faire de
l'ASM !!! Encore, faire un peu d'électronique, ça peut toujours
servir... Mais je te l'accorde, tout ça n'est qu'une question de point
de vu car, en effet, si tu codes pas en ASM, le C(++ turbo machin) est
finalement moins balèze que le VB !!! Ceci explique d'ailleurs le
succès que remporte le VB malgrès ses nombreux petits défauts...

678) Oui, c'est vrai, on s'éloigne du sujet... Je n'ai jamais dis
qu'une constante ne pouvait pas être un caractère ASCII !!! Ce que je
voulais dire c'est qu'il faut savoir faire la différence entre la
valeur et la constante... C'est pas pour rien que crocrosoft a créé des
cronstantes !!!





C) C'est vrai...



D) Non, on s'en fout pas, mais on voudrait pas vexer Kakenette...
vu le peu de filles sur ce genre de sites, faut pas les effrayer...



Enjoy
0
misterzinzin Messages postés 112 Date d'inscription vendredi 27 octobre 2000 Statut Membre Dernière intervention 26 janvier 2011 2
19 juin 2005 à 08:41
hi tu me décapitera pas avec ta hache quand tu me verra alors ?



ps: tu prefere le chinois a l'anglais ?... tu connais le chinois ?



re D) super car en fait je ne connaissais pas de blague sur les blonde

kakenette t surement une fille super (normal... tu comprend les mec qui sont dans leur trip de programmation )


moi, le seul, l'unique, ZinZin
0
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 24
19 juin 2005 à 21:49
Humm... laisse moi réfléchir... Ben si, je te décapiterais bien avec ma hache, juste pour le plaisir (je plaisante!!!)



rere D) C'est tout à ton honneur de ne pas en connaître !!! Moi,
j'aimerais bien en connaître... mais si j'en connais pas c'est juste
parce que j'arrive pas à les mémoriser... y'en a tellement aussi faut
dire!!!
0
Rejoignez-nous