TextBox Autosize ? [Résolu]

cs_Exploreur 4824 Messages postés lundi 11 novembre 2002Date d'inscription 15 novembre 2016 Dernière intervention - 6 févr. 2007 à 16:32 - Dernière réponse : cs_Exploreur 4824 Messages postés lundi 11 novembre 2002Date d'inscription 15 novembre 2016 Dernière intervention
- 7 févr. 2007 à 19:53
Bonsoir à tous,

Une petite question pour savoir si cela est possible .....
Est-il possible de faire, via du code Vb ou d'utiliser les API de windows, d'avoir la possibilté d'une fonction AutoSize d'un TextBox comme un Label ?

Merci par avance de vos réponses qui peuvent me mettre sur la voie...

A+
Exploreur
Afficher la suite 

Votre réponse

11 réponses

Meilleure réponse
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 7 févr. 2007 à 18:37
3
Merci
bizarre que tu sois passé à côté, tu y as laissé un comm ^^

le code donnera juste çà :

With AfSize
    .Font = Text1.Font
    .Text = Text1.Text    If .Calculate Then Text1.Width .Width: Text1.Height .Height
End With

++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp

Merci PCPT 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de PCPT
Meilleure réponse
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 7 févr. 2007 à 19:39
3
Merci
exact
regarde dans Cmd_Calculate_Click(), certaines particulatités....

ici le code sera donc :

Private Sub Command1_Click()
    Text4.Text =  Format$(195654654823.24, "### ### ### ###.###") & "
?"
    
    With AfSize
        .Font = Text4.Font
        .Text = Text4.Text
        If .Calculate Then
            Text4.Width = .Width * Screen.TwipsPerPixelX + 120
            Text4.Height = .Height * Screen.TwipsPerPixelY + 120
        End If
    End With
End Sub

<small>Coloration
syntaxique automatique [AFCK] </small>
       
(120 pour les bordures)
++
<hr size ="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp

Merci PCPT 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de PCPT
cs_DARKSIDIOUS 15838 Messages postés jeudi 8 août 2002Date d'inscription 4 mars 2013 Dernière intervention - 6 févr. 2007 à 17:11
1
Merci
une bidouille qui en vaut une autre : mettre le texte de ton textbox dans un label autosize temporaire puis appliquer la taille du label au textbox...
Commenter la réponse de cs_DARKSIDIOUS
jmfmarques 7668 Messages postés samedi 5 novembre 2005Date d'inscription 22 août 2014 Dernière intervention - 6 févr. 2007 à 17:10
0
Merci
Pas de propriété Autosize.

Tu as par contre toujours la possibilité de dimensionner une textbox en fonction de la hauteur et de la largeur du texte qu'elle contient...
La chose est certes réalisable, mais je ne suis pas certain de ce que l'effet sera heureux !

Il te faudra de toutes façons choisir (bien évidemment) entre les 2 affichages suivants :

1)  Textbox d'une largeur égale à celle de la ligne la plus large de ton texte et d'une hauteur égale à celle de ton texte
2) Textbox d'une largeur inférieure à celle de la ligne la plus large et dont la hauteur devra être telle que la totalité du texte devra être affichée

Tout est bien sur réalisable avec une petite acrobatie, mais cette acrobatie sera différente dans un cas et dans l'autre.

Quelle est donc l'option choisie ?
Commenter la réponse de jmfmarques
jmfmarques 7668 Messages postés samedi 5 novembre 2005Date d'inscription 22 août 2014 Dernière intervention - 6 févr. 2007 à 17:12
0
Merci
Une 3ème option :

Textbox d'une largeur égale à celle de la ligne la plus large mais hauteur à "dérouler"
Commenter la réponse de jmfmarques
cs_Exploreur 4824 Messages postés lundi 11 novembre 2002Date d'inscription 15 novembre 2016 Dernière intervention - 6 févr. 2007 à 18:17
0
Merci
Bonsoir Jmfmarques et Darksidious,

Merci de vos réponses...

Jmfmarques >> Je vais plutôt opter pour la solution de Darksidious, que me parait simple à mettre en oeuvre..

Merci encore à vous deux..

A+
Exploreur
Commenter la réponse de cs_Exploreur
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 7 févr. 2007 à 18:20
0
Merci
salut,
4e solution, mesurer le texte proprement et suivre l'exemple ici ^^

++
PCPT  [AFCK]
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Commenter la réponse de PCPT
cs_Exploreur 4824 Messages postés lundi 11 novembre 2002Date d'inscription 15 novembre 2016 Dernière intervention - 7 févr. 2007 à 18:42
0
Merci
Salut PCPT,


Lol...Le pire dans tout cela...c'est que ta source je l'avais télécharger !!! Impossible de retrouver le Zip!!!Alors quand tu commence à avoir pas mal de Zip, ben moi je commence à ne plus savoir qui est quoi !!!!Il faut que je fasse du ménage sur mon Pc!!
Mais c'est vrai que ta source et  très intéressante,  pour l'instant j'utilise la solution de Darksidious, et je reviendrai en détails sur la tienne(car il faut que je regarde le code à fond!!!) que je viens de télécharger à nouveau.Mais cette fois-ci, je lui est donné un nom plus parlant : Autosize_chaine_Carractère_PCPT.Zip !!!


Merci d'avoir répondu..

A+
Exploreur
Commenter la réponse de cs_Exploreur
cs_Exploreur 4824 Messages postés lundi 11 novembre 2002Date d'inscription 15 novembre 2016 Dernière intervention - 7 févr. 2007 à 18:46
0
Merci
Salut,


Oui je sais j'ai laissé un commentaire, mais je t'explique pourquoi ci-dessus.
Non c'est pas bizarre, il faut juste que je répertorie les sources télécharger avec un nom plus parlant!!


A+
Exploreur


 


 
Commenter la réponse de cs_Exploreur
cs_Exploreur 4824 Messages postés lundi 11 novembre 2002Date d'inscription 15 novembre 2016 Dernière intervention - 7 févr. 2007 à 19:22
0
Merci
Salut PCPT,

Bon je viens de regarder ton code, et il y a un truc qui fonctionne pas comme dans ta source...J'explique :
Ma zone de text est de ce format là : Text4.Text = Format$(Total, "### ### ### ###.###") & " ?"

Donc je reprend ton code,
With AfSize
    .Font = Text4.Font
    .Text = Text4.Text    If .Calculate Then Text4.Width .Width: Text4.Height .Height
End With

Et là ça par en live, je me retrouve avec une TextBox de la taille d'une CheckBox, j'ai changé la police, le format du text, la taille...Idem...Je ne comprend pas pourquoi..

A+
Exploreur
Commenter la réponse de cs_Exploreur
cs_Exploreur 4824 Messages postés lundi 11 novembre 2002Date d'inscription 15 novembre 2016 Dernière intervention - 7 févr. 2007 à 19:53
0
Merci
Salut PCPT,

Ben...PARFAIT...

A+
Exploreur
Commenter la réponse de cs_Exploreur

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.