IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Vertical Text Align


Sujet :

VB 6 et antérieur

  1. #1
    Membre averti
    Inscrit en
    Décembre 2008
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 39
    Par défaut
    Bonjour tous le monde
    je cherche une propriétée dans les composants: Textbox ou Label pour centrer Verticalement un text au mileu

    Je trouve seulement center horizotalement

    [IMG]file:///c:\Align.bmp[/IMG]

  2. #2
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 140
    Par défaut
    Bonjours
    Regardes dans Les contributions VB6/VBScript de Delbeke Composant label vertical

    Motif de l'edit:
    Dans le fond c'est peutêtre la propriété .Alignment que tu cherches pour ces deux contrôles.
    Et en passant, ton lien image n'est pas valide.
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  3. #3
    Membre averti
    Inscrit en
    Décembre 2008
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 39
    Par défaut Salut .........
    Merci Bien ProgElecT de votre Réponse
    Mais ce que je cherche ce n'ai mettre le texte Verticalement mais laisser le horizotale et l'aligner au cntre du TextBox verticalement

    je m'explique Horizotalement on le met soit à gauche, à droite ou au mileu

    ce que je veux c'est le mettre en centre Verticalement c'est à dire non plus en Haut où en Bas mais en plein centre du TextBox

  4. #4
    Membre Expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Par défaut
    Une solution tout bête
    Prévois pour ton label, une hauteur suffisante pour trois lignes de textes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Label1.caption = VbCrLf & "Nom texte à centrer"

  5. #5
    Membre averti
    Inscrit en
    Décembre 2008
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 39
    Par défaut SVP Une solution pour TextBox
    pour Label on peut jouer sur la Hauteur
    mais je cherche une solution pratique pour un TextBox

  6. #6
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Bonjour, DzBadBoy,

    On peut se lancer dans des calculs orthodoxes et jouer avec TextHeight + une fonction de l'Api de Windows...

    Mais on peut également se montrer astucieux...

    Ainsi :

    Place sur ta Form une textbox multiline et nomme-la Text1
    Donne à ta textbox la propriété Alignment = 2 (Center)
    Place maintenant un label et nomme-le Fantome
    Ajoute un bouton de commande nommé Command1 (pour tester)

    mets ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    Private Sub Form_Activate()
     With Fantome
      .AutoSize = True
      .WordWrap = True
      .Visible = False
     End With
    End Sub
     
    Private Sub Command1_Click()
      Fantome.Width = Text1.Width
      Set Fantome.Font = Text1.Font
      montexte = "pour Label" & vbCrLf & "on peut jouer sur " & vbCrLf & "la Hauteur, mais je cherche" & _
      vbCrLf & "une solution pratique pour un TextBox"
      Fantome.Caption = montexte
      While Fantome.Height < Text1.Height
        Fantome.Caption = vbCrLf & Fantome.Caption & vbCrLf
      Wend
      If Fantome.Height > Text1.Height Then Fantome.Caption = Mid(Fantome.Caption, 3)
      Text1.Text = Fantome.Caption
    End Sub
    Lance, clique sur Command1 et vois..
    Deux choses, maintenant :
    1) ta textbox devra avoir une hauteur au moins égale à celle nécessaire pour afficher tout le texte, bien évidemment
    2) il est clair que le centrage vertical ne sera pas toujours (en fonction du nombre de lignes) rigoureusement exact (car il est par analogie possible de définir un nombre "central" d'une suite impaire, mais jamais rigoureusement central d'une suite paire...)
    Amuse-toi bien ...

  7. #7
    Membre averti
    Inscrit en
    Décembre 2008
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 39
    Par défaut ajoute une nouvelle propriété
    Merci ucfoutu pour ton effort
    Peut-on créer un code qui ajoute une nouvelle propriété au composant
    TextBox pour Centrer, Mettre en Haut ou en bas d'un texte quelconque

  8. #8
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Citation Envoyé par DzBadBoy Voir le message
    Merci ucfoutu pour ton effort
    Peut-on créer un code qui ajoute une nouvelle propriété au composant
    TextBox pour Centrer, Mettre en Haut ou en bas d'un texte qlq
    La réponse est oui, mais à condition de créer un nouvel UserControl (ocx) basé sur une textbox.
    Il sera mille fois plus simple et plus économique de créer plutôt une fonction ...
    Je t'ai montré la voie à suivre.
    A toi, maintenant, de faire ton effort...

Discussions similaires

  1. alignement vertical texte dans <div>
    Par thomasaurelien dans le forum Mise en page CSS
    Réponses: 8
    Dernier message: 19/07/2012, 16h56
  2. Alignement vertical texte
    Par lelectronique.com dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 14/06/2009, 14h13
  3. alignement vertical texte dans liste
    Par pop_up dans le forum Mise en page CSS
    Réponses: 17
    Dernier message: 06/02/2008, 13h13
  4. Alignement vertical texte dans un JTextComponent
    Par barbiche dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 19/09/2007, 12h03
  5. Alignement vertical texte et image à côté
    Par anouka dans le forum Mise en forme
    Réponses: 5
    Dernier message: 17/07/2007, 09h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo