:salut:
est-ce qu'il est possible de faire scroller un texte dans un Label? si oui, comment?
merchi pour toutes vos réponses
Version imprimable
:salut:
est-ce qu'il est possible de faire scroller un texte dans un Label? si oui, comment?
merchi pour toutes vos réponses
Tu parles d'un scroll horizontal ?
:roll: :wink:
euh oui, si possible de droite à gauche
dsl ne pa avoir précisé :oops:
La fiche contient un TLabel et un TTimer (interval=100 par exemple)
j'espère que c'est ce que tu recherchais :wink:Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 var Form1: TForm1; i : Integer = 0 ; di : ShortInt = +1 ; // direction S : String ; implementation {$R *.dfm} procedure TForm1.Timer1Timer(Sender: TObject); begin Label1.Caption:=Copy(S,i,Length(S)-i+1) ; i:=i+di ; If (i>Length(s)) Or (i<1) Then di:=-di ; end; procedure TForm1.FormCreate(Sender: TObject); begin S:=Label1.Caption ; end;
tu mets quelque chose dans Label1.Caption , bien sûr :lol:
oui merci bcp, mais il va de droite à gauche puis il revient de la gauche!
ya pa moyen de le faire scroller en continue de la droite vers la gauche?
comme dans winamp
merci
Mais, si !
Si on reprend l'exemple de ilyes, tu affiche en plus en premier, la portion de chaîne (extrémité droite) qui disparait.
:roll: :wink:
En reprennant un peu l'exemple de ilyes, tu peut taper :
En s'assurant que tu tapes bien la chaine complète dans Label1.Caption sans oublier l'espace (ou plusieurs) à la fin afin d'éviter que la suite soit colléeCitation:
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Label1.Caption:=Copy(Label1.Caption,2,Length(Label1.Caption)-1) + " " + Copy(S,1,2) ;
end;
Voilà je pense, que ceci devrait correspondre un peu à ce que fait Winamp
:wink:
Désolé j'ai fait une petite erreur. :oops:
J'ai oublié de remplacer "S" par Label1.Caption.
Voici le code corrigé, j'ai même rajouter la Variable "SautNbCaractere" qui permet de définir le nombre de caractères par scroll :
:wink:Citation:
var
Form1: TForm1;
SautNbCaractere : Integer = 1;
implementation
{$R *.dfm}
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Label1.Caption:=Copy(Label1.Caption,SautNbCaractere,Length(Label1.Caption)-SautNbCaractere) + " " + Copy(Label1.Caption,1,SautNbCaractere) ;
end;
merci beacup :ave: