Coller des labels [Résolu]

Messages postés
342
Date d'inscription
dimanche 26 janvier 2003
Dernière intervention
25 mars 2009
- 18 déc. 2008 à 19:05 - Dernière réponse :
Messages postés
342
Date d'inscription
dimanche 26 janvier 2003
Dernière intervention
25 mars 2009
- 20 déc. 2008 à 02:21
J'ai plusieurs labels que je colle les uns à côtés des autres avec la propriété dock à Left et l'autosize qui va bien.

Le problème, c'est qu'un espace notable se forme entre chaque label même si padding et margin sont à 0;0;0;0

Comment faire pour régler ce problème?

A noter que si je colle plusieurs labels cote a cote, c'est parceque chaque label peut avoir une couleur/police differente et que la rtf ne convient pas (pas d'autoresize, pas de comportement "label" avec le texte non sélectionnable)
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
342
Date d'inscription
dimanche 26 janvier 2003
Dernière intervention
25 mars 2009
- 20 déc. 2008 à 02:21
3
Merci
Uep c'est ce que j'ai fait. On est jamais aussi bien servi que par soit même non?

public class EnhancedLabel : Label
    {
        protected override void OnPaint(PaintEventArgs e)
        {
            Graphics g = e.Graphics;
           
            using (Brush back = new SolidBrush(this.BackColor))
            {
                g.FillRectangle(back, this.Location.X, this.Location.Y, this.Width, this.Height);
            }

            using (Brush fore = new SolidBrush(this.ForeColor))
            {
                g.DrawString(this.Text, this.Font, fore, Point.Empty);
            }
        }

        protected override void OnTextChanged(EventArgs e)
        {
            Graphics g = System.Drawing.Graphics.FromHwnd(this.Handle);
            SizeF s = g.MeasureString(this.Text, this.Font);
            this.Size = Size.Round(s);
            g.Dispose();
            base.OnTextChanged(e);
        }
    }

Merci bubbathemaster 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 91 internautes ce mois-ci

Commenter la réponse de bubbathemaster
Messages postés
175
Date d'inscription
vendredi 22 décembre 2000
Dernière intervention
9 septembre 2010
- 19 déc. 2008 à 10:24
0
Merci
Change la Location au lieu de changer padding...Tu l'as défini lorsque que tu crés tes labels dynamiquement (cf: Components.Add(label) ou quelque chose dans ce genre.

La connaissance est la plus grande des richesses.
Commenter la réponse de LordOfTheShadow
Messages postés
327
Date d'inscription
mardi 17 février 2004
Dernière intervention
10 avril 2010
- 19 déc. 2008 à 21:54
0
Merci
Salut,
Je pense qu'avec des labels tu n'a pas le choix, il y aura toujours un espace sur les côtés. Tu peux essayer de créer ton propre controle sinon. Ou même dessiner les chaines de caractères directement sur ton container.
Commenter la réponse de WishhhMaster

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.