Inséré un élément au milieux d'une chaîne de caractères
Résolu/Fermé
skk201
Messages postés
938
Date d'inscription
jeudi 11 septembre 2008
Statut
Membre
Dernière intervention
16 octobre 2016
-
15 août 2014 à 16:33
skk201 Messages postés 938 Date d'inscription jeudi 11 septembre 2008 Statut Membre Dernière intervention 16 octobre 2016 - 23 août 2014 à 12:10
skk201 Messages postés 938 Date d'inscription jeudi 11 septembre 2008 Statut Membre Dernière intervention 16 octobre 2016 - 23 août 2014 à 12:10
A voir également:
- Inséré un élément au milieux d'une chaîne de caractères
- Caractères ascii - Guide
- Caractères spéciaux symboles clavier - Guide
- Chaine tnt gratuite sur mobile - Guide
- Caractères spéciaux - Guide
- Clavier mac caractères spéciaux - Guide
4 réponses
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
728
15 août 2014 à 17:35
15 août 2014 à 17:35
Bonjour,
Comme ceci:
Comme ceci:
Dim texte As String texte = "this is" & Environment.NewLine & _ "a multiline" & Environment.NewLine & _ "tooltip!" Me.ToolTip1.ToolTipTitle = " Info" Me.ToolTip1.SetToolTip(Me.Button1, texte)
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
728
16 août 2014 à 09:04
16 août 2014 à 09:04
Vois si cela te convient:
Mettre dans un Form : 1 button et 1 ToolTip
Voici le code:
Je t'ai mis le site de manipulation des chaines de caractères
Mettre dans un Form : 1 button et 1 ToolTip
Voici le code:
Option Strict On Imports System.Text.RegularExpressions Public Class Form1 'http://plasserre.developpez.com/cours/vb-net/?page=langage-vb2#LV-E-4-c Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click Dim myValue As String Dim defaultValue As String defaultValue = "Si myLines() est un tableau de String, je veux ajouter ces lignes bout à bout en les séparant d'un retour à la ligne, On peut ajouter 2 paramètres permettant d'indiquer le nombre de ligne maximum et forcer l'élimination des lignes vides. " myValue = InputBox("Entrez le message que vous voulez afficher dans le ToolTip", "Afficher ToolTip", defaultValue, 100, 100) ' If user has clicked Cancel, set myValue to defaultValue If myValue Is "" Then myValue = defaultValue ' On crée un Regex Dim R As New Regex("\s* \s*2") ' décomposition de ligne en champs Dim Nom As String() = R.Split(myValue) Dim myText As String = String.Join(ControlChars.CrLf, Nom) Me.ToolTip1.SetToolTip(Me.Button1, myText) End Sub End Class
Je t'ai mis le site de manipulation des chaines de caractères
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
728
16 août 2014 à 11:28
16 août 2014 à 11:28
Quelques explications:
Dans cet exemple c'est le 2 qui fait le retour à la ligne
Voici un autre exemple où j'ai placé _ pour chaque retour à la ligne:
Tu peux donc choisir ton retour à la ligne!
Dans cet exemple c'est le 2 qui fait le retour à la ligne
Voici un autre exemple où j'ai placé _ pour chaque retour à la ligne:
Dim myValue As String Dim defaultValue As String defaultValue = "Si myLines() est un tableau de String, je veux ajouter ces lignes bout à bout en les_ séparant d'un retour à la ligne. On peut ajouter 2 paramètres permettant d'indiquer_ le nombre de ligne maximum et forcer l'élimination des lignes vides. " myValue = InputBox("Entrez le message que vous voulez afficher dans le ToolTip", "Afficher ToolTip", defaultValue, 100, 100) ' If user has clicked Cancel, set myValue to defaultValue If myValue Is "" Then myValue = defaultValue ' On crée un Regex Dim R As New Regex("\s*\s*_ ") ' décomposition de ligne en champs Dim Nom As String() = R.Split(myValue) Dim myText As String = String.Join(ControlChars.CrLf, Nom) Me.ToolTip1.SetToolTip(Me.Button1, myText)
Tu peux donc choisir ton retour à la ligne!
skk201
Messages postés
938
Date d'inscription
jeudi 11 septembre 2008
Statut
Membre
Dernière intervention
16 octobre 2016
54
18 août 2014 à 10:31
18 août 2014 à 10:31
Ok Merci beaucoup :)
C'est super comme boulot et ça fonctionne bien :) encore merci.
C'est super comme boulot et ça fonctionne bien :) encore merci.
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
728
21 août 2014 à 14:55
21 août 2014 à 14:55
Bonjour skk201,
Ton post m'a donné l'idée de faire un snippet pour couper un texte tout les x mots ou mettre ce texte en x lignes automatiquement.
Si cela t'interesse:
https://codes-sources.commentcamarche.net/source/100708-couper-un-texte-tous-les-x-mots-les-x-caracteres-ou-en-x-lignes?utm_source=greenarrow&utm_campaign=&utm_medium=mail
Bonne programmation
Ton post m'a donné l'idée de faire un snippet pour couper un texte tout les x mots ou mettre ce texte en x lignes automatiquement.
Si cela t'interesse:
https://codes-sources.commentcamarche.net/source/100708-couper-un-texte-tous-les-x-mots-les-x-caracteres-ou-en-x-lignes?utm_source=greenarrow&utm_campaign=&utm_medium=mail
Bonne programmation
skk201
Messages postés
938
Date d'inscription
jeudi 11 septembre 2008
Statut
Membre
Dernière intervention
16 octobre 2016
54
21 août 2014 à 15:28
21 août 2014 à 15:28
Super c'est génial d'inspirer des gens comme toi.
J'y jetterai un oeil meme si la solution que tu m'as proposer convient très bien :)
Si tu veux amélioré ton code tu pourrai même imaginer un retour ligne après x caractères.
Donc si ça doit couper un mot en deux ça le switch de ligne ;)
J'y jetterai un oeil meme si la solution que tu m'as proposer convient très bien :)
Si tu veux amélioré ton code tu pourrai même imaginer un retour ligne après x caractères.
Donc si ça doit couper un mot en deux ça le switch de ligne ;)
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
728
21 août 2014 à 15:56
21 août 2014 à 15:56
Pour la découpe tout les x caractères on en parle sur ce post:
https://forums.commentcamarche.net/forum/affich-30620530-decouper-une-chaine-de-caractere-tous-les-8-caracteres#p30636459
Mais je ne pense pas que cela soit possible, car si tu tombes sur un article le, la, un, etc., c'est très compliqué. après cela fait usine à gaz. Je pense qu'il faut coder le plus simplement possible. Car si on se replonge dans le code quelques années plus tard, je ne t'explique pas la galère!
@ + Le Pivert
https://forums.commentcamarche.net/forum/affich-30620530-decouper-une-chaine-de-caractere-tous-les-8-caracteres#p30636459
Mais je ne pense pas que cela soit possible, car si tu tombes sur un article le, la, un, etc., c'est très compliqué. après cela fait usine à gaz. Je pense qu'il faut coder le plus simplement possible. Car si on se replonge dans le code quelques années plus tard, je ne t'explique pas la galère!
@ + Le Pivert
skk201
Messages postés
938
Date d'inscription
jeudi 11 septembre 2008
Statut
Membre
Dernière intervention
16 octobre 2016
54
>
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
23 août 2014 à 12:10
23 août 2014 à 12:10
Super, je vais adapter ça a un tooltip.
Merci beaucoup ?
Merci beaucoup ?
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
728
23 août 2014 à 11:31
23 août 2014 à 11:31
Finalement ce n'était pas très compliqué pour faire un retour à la ligne après x caractères, sans couper de mot:
et pour appeler:
Si cela peut être utile
Bon WE
'couper le texte tout les x caracteres Private Sub coupercaractere(ByVal chaine As String, ByVal x As Integer, ByVal text As TextBox) Dim a, i, countcaract As Integer countcaract = chaine.Length 'nombre de caracteres dans la chaine If x = 0 Or x > countcaract Then Exit Sub For i = x To chaine.Count - 1 Step x a = (InStr(i, chaine, " ")) 'chercher l'espace le plus près chaine = (chaine.Insert(a, "_ ")) Next text.AppendText(chaine) afficher_texte() End Sub Private Sub afficher_texte() ' On crée un Regex Dim R As New Regex("\s*\s*_ ") ' décomposition de ligne en champs Dim Nom As String() = R.Split(TextBox1.Text) Dim myText As String = String.Join(ControlChars.CrLf, Nom) TextBox1.Text = myText End Sub
et pour appeler:
coupercaractere(str, 50, TextBox1) 'mettre le texte sur x caracteres sans couper de mot (chaine, nbre caractères, TextBox)TextBox multiligne
Si cela peut être utile
Bon WE
15 août 2014 à 17:51
Donc comme ça pas de retour ligne.
Ce que j'aimerait c'est une méthode qui puisse me permettre d'ajouter un Environment.NewLine au milieu de la chaine. Par exemple, après 20 caractère, le prochain " " (espace) se transforme en Environment.NewLine.
Si non je serai obligé de le faire manuellement pour chaque action et tester à chaque fois si ça donne qqchose de stasifesant.
Après s'il y a pas d'autre moyen je ferai ça ^^