Les Snippets

Connexion

Justification d'un Texte

Niveau requis pour utiliser/comprendre cette source : 1 ( Débutant )
Créé le 08/04/2006 22:48:23 et initié par Gobillot [Liste]
Vue : 4927
Catégorie(s) : Trucs & Astuces, Chaîne de caractères, Divers
Langages dispo pour ce code :
- VB6



Langage : VB6
Date ajout : 08/04/2006
Posté par Gobillot [Liste]
'// on utilise ici une propriété de la TextBox
 '// qui adapte la Longueur de ses lignes en fonction de sa Largeur.
 '// après avoir défini la Largeur de la TextBox,
 '// les Lignes apparaissent bien avec la bonne Longueur
 '// mais le Texte n'est pas encore utilisable tel quel,
 '// parce les fins de Lignes ne sont pas réellement présentes.
 '// il faut donc parcourir la TextBox
 '// et rajouter les vbCrLf aux bons endroits.
 
 '// seulement après le Texte sera utilisable
 '// soit pour être imprimé ou pour être écrit dans un fichier.
 
 '// à noter que si sur l'écran le Texte n'apparaît pas avec la Longueur imposée
 '// c'est parce que la résolution de l'écran n'est pas toujours de 72 dpi
 '// qui est le standard pour l'imprimante.
 
 
 Private Sub JustificationTexte(TxtBox As TextBox, NomPolice As String, TaillePolice As Single, LongueurEnMillimetres As Integer)
     Dim i   As Integer
     Dim j   As Integer
     Dim k  As Integer
     Dim Lg As Single
     Dim Ln As Long
     
 '// adapter la longueur de la TextBox en fonction de la police utilisée
     TxtBox.Font = NomPolice
     TxtBox.FontSize = TaillePolice
     Lg = ScaleX(LongueurEnMillimetres, vbMillimeters, ScaleMode)
 
 '// ajouter 4 pixels pour les bordures si nécessaire
     If TxtBox.BorderStyle = 1 Then Lg = Lg + ScaleX(4, vbPixels, ScaleMode)
 
 '// ajouter 17 pixels pour la Scrollbar Verticale si présente
     If TxtBox.ScrollBars > 1 Then Lg = Lg + ScaleX(17, vbPixels, ScaleMode)
     TxtBox.Width = Lg
 
 '// ajouter une fin de Ligne à la fin du TextBox si elle n'existe pas
     If Right$(TxtBox.Text, 2) <> vbCrLf Then TxtBox.Text = TxtBox.Text & vbCrLf
 
 '// ajouter une fin de ligne à chaque ligne qui n'en a pas
     Ln = Len(TxtBox.Text)
     TxtBox.SelStart = 0
     TxtBox.SetFocus
     j = 0
     
     While j < Ln
           i = j + 1
           SendKeys ("{DOWN}"): DoEvents
           j = TxtBox.SelStart
           SendKeys ("{LEFT}"): DoEvents
           k = TxtBox.SelStart
           If j - k = 1 Then
              SendKeys ("{END}"): DoEvents
              TxtBox.SelText = vbCrLf
              Ln = Ln + 2
              Else
              SendKeys ("{HOME}{DOWN}"): DoEvents
              End If
           Wend
 
 End Sub
 
 
 '// exemple d'utisation
 '// si Text1 contient le Texte à justifier:
     JustificationTexte Text1, "arial", 8, 100
 
 
 

Snippets en rapport avec : Lignes, Justifier, Césure, Découper, Longueur



Codes sources en rapport avec : Lignes, Justifier, Césure, Découper, Longueur

{Visual Basic, VB6, VB.NET, VB 2005} DÉCOUPE D'UN TEXTE AVEC UNE CERTAINE LONGUEUR (CÉSURE, MISE À LA LIGNE AUTOMATIQUE)
Ce code coupe une chaine de caractères en plusieurs lignes et en faisant attention de ne pas couper ...

{Visual Basic, VB6, VB.NET, VB 2005} SCRIPT EN VBS QUI DÉCOUPE UN FICHIER EN PLUSIEURS FICHIERS DE X LIGNES.
Ce script permet de découper un fichier en plusieurs fichiers de x lignes. Je l'utilise assez souve...

{Visual Basic, VB6, VB.NET, VB 2005} AFFICHAGE DES LIGNES D'UN RICHTEXTBOX
Voici une classe permet d'afficher les lignes d'un RichTextBox. La méthode utilisée est la recherch...

{C / C++ / C++.NET} OBJET 3D EN CONSOLE
Ce programme permet de faire tourner un objet 3D, dessiné en ascii dans la console. Il est possib...

{Visual Basic, VB6, VB.NET, VB 2005} FONCTION QUI PERMET DE LIRE UN CHAMP DANS UN CSV EN FONCTION DE SA LIGNE ET DE SA COLONNE.
Ce bout de code est une fonction qui permet de lire un champ dans un CSV en fonction de sa ligne et ...

{Visual Basic, VB6, VB.NET, VB 2005} VBA WORD - DÉCOUPAGE DOCUMENT EN FICHIERS HTML
Cette macro permet de découper chaque page d'un document Word en fichiers HTML indépendants tout en ...

{C / C++ / C++.NET} NOMBRE DE LIGNES ET DE COLONNES D'UN FICHIER
Voici ma première source, qui permet de trouver le nombre de colonnes et de lignes d'un fichier avec...

{Visual Basic, VB6, VB.NET, VB 2005} PICTURE MANAGEMENT
Cet outil a été développé pour une vocation type laboratoire de recherche. J'avais besoin d'un petit...

{Visual Basic, VB6, VB.NET, VB 2005} SPLITEUR DE FICHIERS (BINAIRES OU NON) AVEC INTERFACE GRAPHIQUE SOIGNÉE.
Ce source permet de découper/recomposer tous les types de fichiers. Pas de révolution sur ce type ...

{Visual Basic, VB6, VB.NET, VB 2005} CONTROLE POUR TRACER DES LIGNES
En VB.net, le controle ligne n' existe plus. Donc voici un controle qui permet de tracer des lignes ...