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

Composants VCL Delphi Discussion :

Ajustement automatique de la taille de la police dans un TLabel


Sujet :

Composants VCL Delphi

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 47
    Points : 29
    Points
    29
    Par défaut Ajustement automatique de la taille de la police dans un TLabel
    Bonjour, j'aimerais savoir comment faire pour ajuster automatiquemnt la taille de la police automatiquement dans un tlabel apres avoir modier le texte ?

    (si label1 depasse la taille prevu alors reduire la police pour atteindre la taille normal)

    Merci d'avance

  2. #2
    Nouveau membre du Club

    Profil pro
    Inscrit en
    Avril 2002
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2002
    Messages : 15
    Points : 29
    Points
    29
    Par défaut
    salut,

    c'est pas super propre mais c'est une idée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    while (Label1.width > tailleMax) and (Label1.Font.Size > 2) do begin
               Label1.Font.Size := Label1.Font.Size - 1;
               Label1.Repaint;
               end;
    bon dev'. a+

  3. #3
    Membre habitué

    Profil pro
    Inscrit en
    Avril 2002
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 99
    Points : 126
    Points
    126
    Par défaut
    Tu peux te débrouiller de la manière suivante, à condition de mettre la propriété Autosize du label à false. Attention, c'est pas testé et fait de tête mais ça peut te donner une idée de la marche à suivre.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
      if (Label1.Canvas.TextWidth(Label1.Caption) > Label1.Width) then
        repeat
          Label1.Font.Size := Label1.Font.Size - 1;
          Label1.Canvas.Font.Assign(Label1.Font);
        until (Label1.Canvas.TextWidth(Label1.Caption) <= Label1.Width);
    Par contre je ne suis pas sur que ça marche avec les font qui ne sont pas true type.
    A+---------------> Nat <-------------------

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 47
    Points : 29
    Points
    29
    Par défaut
    Ok merci pour votre aide, j'vais voir ce que je peu faire avec ca !!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ajustement automatique de la taille d'un div
    Par j.david dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 22/08/2011, 10h42
  2. ajustement automatique de la taille de la police
    Par goubidik dans le forum Silverlight
    Réponses: 2
    Dernier message: 29/07/2008, 15h41
  3. Ajustement automatique de la taille d'une cellule
    Par milach dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 21/03/2008, 12h11
  4. Comment modifier la taille de la police dans Word ?
    Par djoao dans le forum API, COM et SDKs
    Réponses: 7
    Dernier message: 11/12/2004, 12h49
  5. [C#] Aggrandir la taille de la police dans un DataGrid
    Par fabrice1596 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 08/12/2004, 11h14

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