Coller des labels

Résolu
bubbathemaster Messages postés 339 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 25 mars 2009 - 18 déc. 2008 à 19:05
bubbathemaster Messages postés 339 Date d'inscription dimanche 26 janvier 2003 Statut Membre 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)

3 réponses

bubbathemaster Messages postés 339 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 25 mars 2009 4
20 déc. 2008 à 02:21
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);
        }
    }
3
LordOfTheShadow Messages postés 174 Date d'inscription vendredi 22 décembre 2000 Statut Membre Dernière intervention 9 septembre 2010 5
19 déc. 2008 à 10:24
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.
0
WishhhMaster Messages postés 327 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 10 avril 2010 8
19 déc. 2008 à 21:54
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.
0
Rejoignez-nous