Gambas France BETA


Pas de compte ? Incription

Autosize pour un label

12
AuteurMessages
Foromus#1 Posté le 30/12/2009 à 13:07:00
Bonjour,

Voilà, je cherche à approfondir le contrôle Label. Peu différent de celui en VB, je n'arrive pas à maîtriser la taille automatique.
Quand j'active à True la fonction AutoResize, j'ai bien une adaptation au texte, mais uniquement en hauteur. Par contre, impossible de trouver la propriété qui permet au label de s'ajuster à la longueur du texte, quitte à faire une seconde ligne si le texte est trop long.

J'ai activé à True la propriété "Expand", à tout hasard... Sans résultat ! Eh ... c'est quoi cette propriété Expand ?

Merci beaucoup !
jlouis#2 Posté le 30/12/2009 à 15:17:00
Rebonjour Foromus,

1
PUBLIC SUB Form_Open() Label1.Caption = "vive le Gambas2" ENDPUBLIC SUB Button1_Click() Label1.Font.Size = Label1.Font.Size + 1 END


Le label s'ajuste dans les deux sens, il faut qu' AutoResize soit en TRUE dans la page de propriété.

Au sujet d'Expand
Foromus#3 Posté le 30/12/2009 à 15:25:00
Ah ben oui, mais non...
Ça, j'ai déjà fait, directement dans les propriétés.
Moi, ce que je cherche, c'est le Label qui s'adapte à la taille du texte qu'il doit afficher.
Il est clair que si je passe en SizeFont +1, mon Label devra augmenter sa taille, tant en hauteur qu'en largeur.
A la limite, si mon texte est nul, normalement, mon Label devrait être de la largeur d'un espace...
(On sent l'influence VB là-dessous, n'est-ce pas ?...)
jlouis#4 Posté le 30/12/2009 à 15:35:00
As-tu essayé avec un TextLabel ?

(On sent l'influence VB là-dessous, n'est-ce pas ?...) ;)

Quoique... il n'a pas l'air de s'ajuster en largeur !?! et bien en hauteur.
Foromus#5 Posté le 30/12/2009 à 15:51:00
Effectivement, le Label s'ajuste en hauteur, mais pas en largeur... Cela dit, il ne fait pas une ligne de plus.

Non, je n'ai pas essayé "TextLabel".
A vrai dire, j'hésite à passer à autre chose quand je n'ai pas tout compris sur un sujet...

Finalement :

Je viens de faire quelques essais avec TextLabel : c'est encore pire !
En effet, celui-ci ne change pas de largeur, seulement de hauteur. Mais c'est vrai que, contrairement au Label, tout est affiché, alors que dans le Label, ce qui est en trop est tronqué.

Bon, que ce soit limité quand un texte est vraiment trop long, on peut comprendre, mais là, il y a un souci...
jlouis#6 Posté le 30/12/2009 à 15:58:00
Voici ce que je viens d'essayer...

1
PUBLIC SUB Form_Open() Label1.Caption = "Action BackColor Background Cursor" ENDPUBLIC SUB Button1_Click() Label1.Caption = Label1.Caption & Chr(13) & Chr(10) & Label1.Caption ENDPUBLIC SUB Button2_Click() Label1.Caption = Label1.Caption & Label1.CaptionEND


Avec Label1.AutoResize=TRUE
Ça va peut-être faire avancer les choses... Ce soir les spécialistes vont sûrement nous éclairer.
jeanyvon#7 Posté le 30/12/2009 à 16:08:00
Gambas? Ma! Et gustoSalut,
Si dans ton label tu mets ton alignement sur " top left" le contrôle se dimensionne pile poil sur ton texte ;)
A+
JY
Vieillir? On peut retarder mais pas y échapper!
Foromus#8 Posté le 30/12/2009 à 16:12:00
Oui, je crois que là, on coince un peu...

Pour moi, label.caption, c'était en VB, je ne vois pas de "caption" en Gambas... Ou alors, j'ai mal vu, ce qui m'arrive...

Ah bon, nouveau message entre-deux, je fais l'essai...
Foromus#9 Posté le 30/12/2009 à 16:20:00
Ben non, pas vraiment... Désolé...

D'abord, ça tombe mal, vu que je souhaitais que mon texte fut centré.
Et avec un "left" dans ma propriété, je crains fort une dérive à gauche.... Et effectivement, il écrit à gauche, en haut, ce qui me semble normal avec un "top" en plus...
Et le pire, c'est que mon texte est toujours tronqué....
jeanyvon#10 Posté le 30/12/2009 à 16:27:00
Gambas? Ma! Et gustoEt avant de dire ça marche pas tu fais F5?
Parce que le label ne se dimensionne qu'une fois l'application lancée!
En plus si tu mets autosize sur true ton texte est obligatoirement centré....même avec l'alignement sur top left
Bon :scratch:
A+
JY
Vieillir? On peut retarder mais pas y échapper!
Foromus#11 Posté le 30/12/2009 à 17:05:00
Désolé, effectivement, je n'avais pas lancé par F5...
En fait, quand je programme, je lance souvent par l'icône, ici le triangle pointe à droite.
Donc, là, je me suis dit qu'il devait y avoir une différence entre lancement par icône ou par F5, et j'ai donc lancé par F5.

Malheureusement, je n'ai pas trouvé d'amélioration significative, mon texte trop court n'est pas centré mais justifié à gauche, mon texte trop long est toujours tronqué.
Comme dit plus haut, AutoResize ajuste en hauteur, pas en largeur.

Il est possible qu'un mauvais paramétrage de Ubuntu soit la cause de mes soucis. Il est vrai que je suis loin de maîtriser cet OS. J'ai tout à apprendre...
jeanyvon#12 Posté le 30/12/2009 à 17:18:00
Gambas? Ma! Et gustobonsoir
chez moi voilà avant lancement


et après lancement :lol:



Donc ça marche!
A+
JY :lol!:
Vieillir? On peut retarder mais pas y échapper!
Foromus#13 Posté le 30/12/2009 à 17:42:00
Ah non, mais je vous crois....

Je dois vraiment avoir une connerie dans Ubuntu.

Ce qui m'étonne aussi - mais je ne vois pas la parenté, c'est que ma feuille n'a pas le focus au lancement.

De toute façon, tout ne marche pas sur toutes les machines...
Foromus#14 Posté le 30/12/2009 à 20:39:00
Finalement, et en y regardant de plus près, j'ai essayé sur un autre projet (également projet d'étude). Et je me suis aperçu que ça marchait...
Et je suis allé voir du côté des composants du projet (3è ou5è icône). Donc là, j'ai noté les composants cochés, et je suis retourné voir l'autre projet, là où ça ne marche pas.
Les composants cochés étant différents, j'ai mis les mêmes, à savoire : gb , gb.form , gb.qt , et gb.qt ext.
Avec ça, non seulement mon label s'ajuste bien au texte (au passage, il se moque de Center et aute TopLeft), mais aussi, ma feuille reçoit bien le focus au démarrage...(ce qui me souciait un peu)
Donc, ça colle...

Un petit regret quand même : si mon Label s'adapte bien au texte, en revanche son point de départ reste fixe. En clair, il s'allonge vers la droite mais pas en symétrique. Là, je regrette un peu...

Merci pour les aides et bonne année à tous, je vais souffler un peu...
spheris#15 Posté le 31/12/2009 à 08:34:00
Foromus,
Pour le focus perdu au lancement, c'est exact ce que tu nous dis là car je l'ai déjà remarqué dans certaines version de gambas compilée.
Avec la 2.17 je n'ai pas le problème.
As tu la 2.8 des dépots officiels ?
Car sinon, il serait peut être temps de la mettre à jour.
A+
;)
12