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

 Delphi Discussion :

Scrol Text avec un TStatusBar Windows 10 64Bits et D6


Sujet :

Delphi

  1. #1
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 421
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 421
    Points : 1 325
    Points
    1 325
    Par défaut Scrol Text avec un TStatusBar Windows 10 64Bits et D6
    Bonsoir à toutes et à tous,

    J'essaye de coder un Scrolling du texte de mon TStatusBar avec un code connu mais sans succès.

    ! Je n'utilise pas la propriété "Simpletext" du TStatusBar.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    procedure TForm1.Timer1Timer(Sender: TObject);
    begin
    chaine := pchar('Déclarez votre flamme amoureuse en vous inspirant de 6 poèmes');
    chaine := copy(chaine, 2, length(chaine)-1) + copy(chaine, 1, 1);
    statusbar.panels[0].text := chaine;
    end;
    Ce n'est peut-être pas possible on ne sait jamais.

    @+,

    cincap

  2. #2
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 661
    Points : 3 630
    Points
    3 630
    Billets dans le blog
    2
    Par défaut
    Bonsoir,

    En FMX, c'est très simple : placez le TLabel dans le TStatusBar et placez un TFloatAnimation en tant qu'enfant du TLabel. Cette animation sera à associer à la propriété "positon.x" du TLabel.
    Mon site - Mes tutoriels - GitHub - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  3. #3
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 036
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 036
    Points : 40 941
    Points
    40 941
    Billets dans le blog
    62
    Par défaut
    Bonjour,
    Citation Envoyé par gbegreg Voir le message
    En FMX, c'est très simple
    sauf que cincap indique qu'il utilise D6 (oui même pas D7)

    @cincap il ne manquerait pas un redessin dans la procedure ?
    un statusbar.invalidate (existe t-il en D6 ?), un statusbar.repaint ou quelque chose de similaire ?
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2016
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 77
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2016
    Messages : 9
    Points : 27
    Points
    27
    Par défaut
    la valeur de chaine est définie à l'intérieur de la fonction Timer (ligne 4)
    donc à chaque fois on refait la même chose
    cela ne devrait-il pas être fait en dehors ? (pas testé)

  5. #5
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 430
    Points
    28 430
    Par défaut
    Pourquoi PChar ?!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    procedure TForm1.Timer1Timer(Sender: TObject);
    var
      Str: string;
    begin
      Str := statusbar.Panels[0].Text;
      if Length(Str) > 1 then
        statusbar.panels[0].text := Copy(Str, 2, Length(Str) - 1) + Str[1];
    end;
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 421
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 421
    Points : 1 325
    Points
    1 325
    Par défaut
    Bonjour à toutes et à tous,

    Merci à tous pour vos remarques mais entre temps, j'ai testé la solution du membre gebegreg qui fonctionne (couleur de fond, couleur du texte et scroll) sauf un petit problème de width du Tlabel sur le TStatusBar.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    procedure TForm1.FormCreate(Sender: TObject);
    begin
     
     
    label1.Caption := pchar('Déclarez votre flamme amoureuse en vous inspirant de 6 poèmes');
     
     label1.Parent := StatusBar ;
     
    // on redimensione le ProgressBar à la taille du panel
         label1.Width := StatusBar.Panels.Items[0].Width + 4;
     
    // puis on le place correctement
         label1.Left := StatusBar.Panels.Items[0].Width;
         label1.Top := 3;
     
    // on le rend visible
         label1.Visible := true;
    end;
    Sinon au départ, j'utilisais la procédure pour modifier la couleur du fond et du texte du TStatusBar et je voulais ajouter un Scroll :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    procedure TForm1.StatusBarDrawPanel(StatusBar: TStatusBar;
      Panel: TStatusPanel; const Rect: TRect);
    begin
    chaine := pchar('Déclarez votre flamme amoureuse en vous inspirant de 6 poèmes');
     
    with StatusBar.Canvas do
      begin
        Brush.Color := clblack;
        FillRect(Rect);
        Font.Color := claqua;
        Font.Size := 10;
        //ImageList1.Draw(StatusBar.Canvas,Rect.Left,Rect.Top,Panel.Index);
        TextOut(Rect.left + 30, Rect.top , chaine); //+ IntToStr(Panel.Index));
     end;
    D'où l'origine du topic.

    @ Paul TOTH merci aussi de ta suggestion, j'ai testé et le texte reste figé.

    @+,

    cincap

  7. #7
    Membre expert
    Avatar de Charly910
    Homme Profil pro
    Ingénieur TP
    Inscrit en
    Décembre 2006
    Messages
    2 344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur TP
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 344
    Points : 3 122
    Points
    3 122
    Par défaut
    Bonjour Cincap,

    sinon ta fonction donne un bon résultat si tu mets

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    chaine := pchar('Déclarez votre flamme amoureuse en vous inspirant de 6 poèmes');
    dans le On Create de la Form.

    Sinon tu la redéfinis à chaque fois dans le Timer.

    (et comme dit Paul le PChar est inutile car Copy attend un String comme 1er argument)

    A+
    Charly

    [Edit] je n'avais pas vu ta réponse précédente !
    [ReEdit] Le code de Paul Toth fonctionne parfaitement

  8. #8
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 858
    Points : 11 301
    Points
    11 301
    Billets dans le blog
    6
    Par défaut
    et le texte reste figé.
    Il suffit de modifier la chaîne à chaque OnTimer et d'affecter sa nouvelle version pour affichage
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  9. #9
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 421
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 421
    Points : 1 325
    Points
    1 325
    Par défaut
    @ Charly910, Hello et merci de ta suggestion, bien vu :

    sinon ta fonction donne un bon résultat si tu mets

    Code :
    Sélectionner tout - Visualiser dans une fenêtre à part
    chaine := pchar('Déclarez votre flamme amoureuse en vous inspirant de 6 poèmes');
    dans le On Create de la Form.

    Ceci fonctionne bien (fond de couleur, Size et couleur du texte) sans un Tlabel, sauf la largeur du texte qui défile que je vérifie :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    procedure TForm1.StatusBarDrawPanel(StatusBar: TStatusBar;
      Panel: TStatusPanel; const Rect: TRect);
    begin
     
    with StatusBar.Canvas do
      begin
        Brush.Color := clblack;
        FillRect(Rect);
        Font.Color := claqua;
        Font.Size := 10;
        //ImageList1.Draw(StatusBar.Canvas,Rect.Left,Rect.Top,Panel.Index);
        TextOut(Rect.left + 30, Rect.top , chaine); //+ IntToStr(Panel.Index));
     end;
     end;
     
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    chaine := pchar('Déclarez votre flamme amoureuse en vous inspirant de 6 poèmes');
    end;
     
    procedure TForm1.Timer1Timer(Sender: TObject);
    begin
    chaine := copy(chaine, 2, length(chaine)-1) + copy(chaine, 1, 1);
    statusbar.panels[0].text := chaine;
    end;
    Sinon ce topic peut être fermé pour ne pas vous faire perdre du temps inutilement.

    Merci à tous j'ai encore appris un +

    @+,

    cincap

  10. #10
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 421
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 421
    Points : 1 325
    Points
    1 325
    Par défaut
    @ tous,

    Malgré cette modification je n'arrive pas à faire démarrer le texte depuis la droite vers la gauche il reste un espace entre le bord droit de la fiche avant le défilement du texte.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    procedure TForm1.StatusBarDrawPanel(StatusBar: TStatusBar;
      Panel: TStatusPanel; const Rect: TRect);
     
    var zone_client: tRect;  txt : string;
      begin
     txt:= StatusBar.Panels[0].text ;
     
     with StatusBar.Canvas do
      begin
     
        Brush.Color := clblack;
       // FillRect(Rect);
        Font.Color := claqua;
        Font.Size := 12;   //Height StatusBar = 26
        //ImageList1.Draw(StatusBar.Canvas,Rect.Left,Rect.Top,Panel.Index);
     
        zone_client.Top := StatusBar.ClientRect.Top + 3; //
        zone_client.Bottom := StatusBar.ClientRect.Bottom - 1;
        zone_client.Left := StatusBar.ClientRect.Left + 1;
        zone_client.Right := StatusBar.ClientRect.Right -1;
     
        FillRect(zone_client);
        zone_client := StatusBar.ClientRect ;
     
        TextRect(zone_client, 2,2, txt);
     end;
     end;
     
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    chaine := ('Déclarez votre flamme amoureuse en vous inspirant de 6 poèmes  ');
    end;
    Gilbert Geyer avait eu le même problème entres autres :

    https://www.developpez.net/forums/d1...texte-tronque/

    Si quelqu'un avait une idée merci d'avance.

    @+,

    cincap

  11. #11
    Membre expert
    Avatar de Charly910
    Homme Profil pro
    Ingénieur TP
    Inscrit en
    Décembre 2006
    Messages
    2 344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur TP
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 344
    Points : 3 122
    Points
    3 122
    Par défaut
    Avec ton code je ne vois rien d'anormal ?

    Le texte est cadré à gauche dans le StatusPanel, est affiché en entier et se déroule normalement de la droite vers la gauche.

    (j'ai ajouté quelques espaces à la fin pour séparer fin et début lors du défilement)

    A+
    Charly

    [Edit] tu voudrais que ton texte soit dupliqué plusieurs fois pour occuper toute la largeur de la fenêtre ?

  12. #12
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 421
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 421
    Points : 1 325
    Points
    1 325
    Par défaut
    @ Charly910, merci de ta réponse voici un print du problème tu comprendras mieux.

    En effet ton raisonnement est correct mais c'est de cet espace qui pose le problème.

    @+,

    cincap
    Images attachées Images attachées  

  13. #13
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 661
    Points : 3 630
    Points
    3 630
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par SergioMaster Voir le message
    sauf que cincap indique qu'il utilise D6 (oui même pas D7)
    Arf, je n'avais pas lu l'objet jusqu'au bout
    Mon site - Mes tutoriels - GitHub - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  14. #14
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 421
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 421
    Points : 1 325
    Points
    1 325
    Par défaut
    Bonjour à toutes et à tous,

    @ gebegreg

    Arf, je n'avais pas lu l'objet jusqu'au bout
    Pas de problème tu m'as rappelé que je l'avais déjà fait dans le temps pour ajouter un TProgessBar dans le TStatusBar.

    J'avais d'ailleurs loupé l'intervention du sieur tourlourou que je remercie.

    Maintenant dans les deux cas, le texte démarre à une certaine distance du bord droit de la fiche comme sur mon print screen.

    Je continue à chercher.

    @+,

    cincap

  15. #15
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 036
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 036
    Points : 40 941
    Points
    40 941
    Billets dans le blog
    62
    Par défaut
    Bonjour,
    ceci
    Citation Envoyé par cincap Voir le message
    Je n'utilise pas la propriété "Simpletext" du TStatusBar.
    Explique peut-être cela
    Citation Envoyé par cincap
    Maintenant dans les deux cas, le texte démarre à une certaine distance du bord droit
    soit tu as deux panels et non un seul ta "distance du bord droit" est en fait le deuxième panel, soit c'est juste un problème de largeur de ton panel
    un simple StatusBar1.Panels[0].width:=width-20; (20 à la louche pour la poignée) à traiter également en cas de resize de la forme
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  16. #16
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 421
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 421
    Points : 1 325
    Points
    1 325
    Par défaut
    @ SergioMaster, merci de ta réponse :

    soit tu as deux panels et non un seul ta "distance du bord droit" est en fait le deuxième panel, soit c'est juste un problème de largeur de ton panel
    J'ai encore vérifié et c'est bien l'index "0" donc un seul panel à moins que le composant est déjà considéré comme un panel.

    J'avais choisis la méthode de l'ajout d'un panel pour modifier la couleur du fond et du texte ainsi que le choix de la fonte car je n'y étais pas arrivé avec le TStatusBar seul.

    Dans la propriété width j'ai mis "0" et le même problème !

    Normalement ce code indique que mon Tlabel aura la même largeur que mon panel, ce qui est le cas donc soit c'est la largeur du texte soit une inconnue !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    label1.Width := StatusBar.Panels.Items[0].Width ;
    Je continue à faire des tests naturellement.

    @+,

    cincap

  17. #17
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 430
    Points
    28 430
    Par défaut
    Nom : bar.gif
Affichages : 191
Taille : 18,8 Ko
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  18. #18
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 421
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 421
    Points : 1 325
    Points
    1 325
    Par défaut
    @ Paul TOTH, merci de ta réponse, je rectifie et je m'excuse car ta suggestion fonctionne, j'ai utilisé la propriété du panel "0" pour ce faire.

    Dans mon test j'avais laissé la variable "string chaine" avec le message d'où ma réponse trop rapide que le message restait figé.

    Mais il y a toujours le décalage du bord droit peut être rajouté un "Textout" propre au panel ?

    Je suis un peu perdu.

    @+,

    cincap

  19. #19
    Membre expert
    Avatar de Charly910
    Homme Profil pro
    Ingénieur TP
    Inscrit en
    Décembre 2006
    Messages
    2 344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur TP
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 344
    Points : 3 122
    Points
    3 122
    Par défaut
    Solution peu élégante, mais qui fonctionne chez moi : le texte occupe toute la largeur de la fenêtre même en wsMaximized :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    chaine := 'Déclarez votre flamme amoureuse en vous inspirant de 6 poèmes   ';
    Chaine := Chaine + Chaine ;
    Chaine := Chaine + Chaine ;
    Chaine := Chaine + Chaine ;
     
    statusbar.Panels[0].Text  := Chaine ;
     
    end;
    C'est peut être parce que ta chaine n'est pas assez longue ?

    A+
    Charly

  20. #20
    Membre éprouvé
    Avatar de Cirec
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    467
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 467
    Points : 1 072
    Points
    1 072
    Par défaut
    Bonjour,

    oui c'est la longueur de la chaine qui pose problème.

    Autre solution:
    ajouter des espaces à la fin de la chaine.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    procedure TForm1.FormCreate(Sender: TObject);
    var
      aRect: TRect;
      slen,
      blen,
      vLen: Integer;
    begin
      chaine := ('Déclarez votre flamme amoureuse en vous inspirant de 6 poèmes  ');
      with StatusBar1.Canvas do
      begin
        aRect := Rect(0,0,1,1);
        Brush.Color := clblack;
        Font.Color := claqua;
        Font.Size := 12;   //Height StatusBar = 26
        DrawText(StatusBar1.Canvas.Handle, ' ', -1, aRect, DT_VCENTER or DT_CALCRECT);
        blen := aRect.Right;
        aRect := Rect(0,0,1,1);
        DrawText(StatusBar1.Canvas.Handle, PChar(Chaine), -1, aRect, DT_VCENTER or DT_CALCRECT);
        slen := aRect.Right;
        vlen := StatusBar1.panels[0].Width - slen;
        if vlen >= blen then
          Chaine := Chaine + DupeString(' ', vlen div blen + 1);
        StatusBar1.panels[0].Text := Chaine;
      end;
    end;
    Cordialement,

    @+

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 1
    Dernier message: 28/07/2019, 19h57
  2. Erreur report avec graphes sur windows 64bits
    Par sara_sihem dans le forum Reports
    Réponses: 0
    Dernier message: 09/11/2015, 16h12
  3. Réponses: 1
    Dernier message: 30/03/2011, 20h35
  4. Utiliser Borland C++ avec Emacs sous Windows
    Par Eikichi dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 02/03/2003, 08h40
  5. Réponses: 4
    Dernier message: 16/01/2003, 15h30

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