Dim ln As Integer = Me.CreateGraphics.MeasureString(mot, ft, 200).Width
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionPublic Function TexteJustifie(ByVal x As Long,ByVal y As Long,ByVal Texte As String,ByVal largeur_de_justification As Long,ByVal _ coefficient_d_acceptation_de_retour_a_la_ligne As long = 5)
Public Function TexteJustifie(ByVal x As Long,ByVal y As Long,ByVal Texte As String,ByVal largeur_de_justification As Long,ByVal _ coefficient_d_acceptation_de_retour_a_la_ligne As long = 5) as string.
Dim lstMot As New List(Of string)
Il me faut pour cela créer une fonction pour compter les mots
Function NombreDeMots(texte as string) as integer 'Je suis trop paresseux pour ajouter ByVal, parce que 'c'est la valeur par défaut en VB.net. dim tableaudemots() as string = texte.split(" ") dim lenombre as integer = tableaudemots.length return lenombre end function
une autre pour extraire les mots de ma chaîne en lui indiquant la position de chaque mot
Imports System.Text.RegularExpressions Public Class Form1 Private Sub Button1_Click(sender As Object, e As EventArgs) _ Handles Button1.Click Dim re As Regex = New Regex("\w+") Dim résultat = re.Matches(TextBox1.Text) Dim laligne As String = String.Empty For Each unmatch As Match In résultat laligne String.Concat("Position ", unmatch.Index, _ " Mot trouvé = ", unmatch.Value, ControlChars.NewLine) TextBox2.Text = String.Concat(TextBox2.Text, laligne) Next End Sub Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load Me.TextBox1.Text = "J'ai fait ce programme, même si c'est pour aider Dayvid" End Sub End Class
Imports System.Text.RegularExpressions Public Class Form1 'contrôles à rajouter sur le formulaire Dim ecran As Screen = Screen.PrimaryScreen Dim largeur As Integer = 1200 Dim hauteur As Integer = 300 Dim Txt1 As New TextBox With {.Parent Me, .Location _ New Point(10, 10), .Width = largeur - 40} Dim Txt2 As New TextBox With {.Parent Me, .Location _ New Point(10, 50), .Width largeur - 40, .ScrollBars ScrollBars.Both} Dim WithEvents bouton1 As New Button With {.Parent Me, .Location _ New Point((largeur / 2) - .Width / 2, hauteur - 100), .Text = "Séparer"} Private Sub Bouton1_Click(sender As System.Object, e As System.EventArgs) Dim re As Regex = New Regex("\w+") Dim résultat = re.Matches(Txt1.Text) Dim laligne As String = String.Empty For Each unmatch As Match In résultat laligne = _ String.Concat(" Position ", unmatch.Index, " mot trouvé ", _ unmatch.Value, ControlChars.NewLine) Txt2.Text = String.Concat(Txt2.Text, laligne) Next End Sub Private Sub Frm_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load Me.Width = largeur Me.Height = hauteur Me.Txt1.Text = "Les lapins sont présents un peu partout sur la planète et se " & _ "répartissent en neuf genres, tous classés dans la famille des léporidés, " & _ "avec leurs proches parents les lièvres. Ce ne sont donc pas des rongeurs " & _ "mais des lagomorphes, une branche cousine qui comprend les lièvres, les " & _ "lapins et les pikas." + vbCr + "Les « lapins » sont classés dans les genres " & _ "suivants de la famille des Léporidae : Brachylagus, Bunolagus, Caprolagus, " & _ "Nesolagus, Oryctolagus (lapin commun), Pentalagus, Poelagus, Pronolagus, " & _ "Romerolagus ou Sylvilagus." + vbCr + "Sept de ces genres ne comprennent qu'une " & _ "seule espèce, le genre Nesolagus comprend deux espèces, le genre Pronolagus " & _ "en comprend trois et le genre Sylvilagus ou lapins d'Amérique, comprend quinze " & _ "espèces, soit au moins 27 espèces différentes de lapins en tout." End Sub End Class
Private Sub Bouton1_Click(sender As System.Object, e As System.EventArgs) handles bouton1.click
Public Class Form1 'contrôles à rajouter sur le formulaire Dim ecran As Screen = Screen.PrimaryScreen Dim largeur As Integer = 1200 Dim hauteur As Integer = 300 Dim Txt1 As New TextBox With {.Parent Me, .Location _ New Point(10, 10), .Width = largeur - 40} Dim Txt2 As New TextBox With {.Parent Me, .Location _ New Point(10, 50), .Width 40, .ScrollBars ScrollBars.Both} Dim WithEvents bouton1 As New Button With {.Parent Me, .Location _ New Point((largeur / 2) - .Width / 2, hauteur - 100), .Text = "Chercher"} Dim TableauDeMots() As String Dim LeNombre As Integer 'Compter le nombre de mots dans la chaîne Public Function NombreDeMots(Texte As String) As Integer TableauDeMots = Texte.Split(" ") LeNombre = TableauDeMots.Length Return LeNombre End Function Dim Position As Integer 'Cherche une sous-chaîne dans une chaîne de caractères. 'ChaineATrouverLa chaîne de caractère à trouver. 'Chaine : La chaîne de caractère à utiliser. 'PositionDepart : Position du caractère à partir de laquelle la recherche commence. Public Function TrouverChaine(Chaine As String, ChaineATrouver As String, _ Optional PositionDepart As Integer = 0) As Integer Position = PositionDepart While Position < NombreDeMots(Chaine) Position += 1 Position = TrouverChaine(Chaine, ChaineATrouver, Position) End While Return Position End Function Dim c As Integer 'Renvoie un champ d'une chaîne à l'index spécifié. 'Chaine : La chaîne de caractère à utiliser. 'Index : La position du champ. 'Delimiteur : Le caractère choisi comme séparateur des champs de la chaîne '(un seul caractère de longueur autorisée). Public Function ChampChaine(Chaine As String, Index As Integer, _ Delimiteur As String) As String Dim ld As String = Len(Delimiteur) Dim sauvegarde As Integer = 1 Dim x As Integer While x <= NombreDeMots(Chaine) x = TrouverChaine(Chaine + Delimiteur, Delimiteur, sauvegarde + 1) If x > 0 Then c += 1 If c = Index Then Return Mid(Chaine, sauvegarde, x - sauvegarde) End If sauvegarde = x + ld End If End While Return sauvegarde End Function Private Sub Bouton1_Click(sender As System.Object, e As System.EventArgs) _ Handles bouton1.Click Me.Txt2.Text = ChampChaine(Txt1.Text, 0, Chr(13)) End Sub 'Texte à analyser Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load Me.Bounds = New Rectangle(100, 300, largeur, hauteur) Me.Txt1.Text = "Les lapins sont présents un peu partout sur la planète et se " & _ "répartissent en neuf genres, tous classés dans la famille des léporidés," & _ " avec leurs proches parents les lièvres. Ce ne sont donc pas des rongeur" & _ "s mais des lagomorphes, une branche cousine qui comprend les lièvres, le" & _ "s lapins et les pikas." + Chr(13) + "Les « lapins » sont classés dans le" & _ "s genres suivants de la famille des Léporidae : Brachylagus, Bunolagus, " & _ "Caprolagus, Nesolagus, Oryctolagus (lapin commun), Pentalagus, Poelagus," & _ " Pronolagus, Romerolagus ou Sylvilagus." + Chr(13) + "Sept de ces genres" & _ " ne comprennent qu'une seule espèce, le genre Nesolagus comprend deux es" & _ "pèces, le genre Pronolagus en comprend trois et le genre Sylvilagus ou l" & _ "apins d'Amérique, comprend quinze espèces, soit au moins 27 espèces diff" & _ "érentes de lapins en tout." End Sub End Class
c'est que j'ai toujours la même réponse quoique je mette comme caractère de recherche.