Bonjour à tous
Quelles fonctions faut-il utiliser pour faire du texte défilant ?
merci d'avance
Bonjour à tous
Quelles fonctions faut-il utiliser pour faire du texte défilant ?
merci d'avance
Salut
Tu peux utiliser l'objet TCanvas et un TTimer ou simple un TLabel et TTimer
Avec une simple recherche sur Google :
cf : http://forum.lazarus.freepascal.org/...?topic=24646.0
http://wiki.freepascal.org/ScrollText
http://delphi.about.com/od/vclusing/a/marquee.htm
http://lazplanet.blogspot.ch/
Voili voilou
- "L'Homme devrait mettre autant d'ardeur à simplifier sa vie qu'il met à la compliquer" - Henri Bergson
- "Bien des livres auraient été plus clairs s'ils n'avaient pas voulu être si clairs" - Emmanuel Kant
- "La simplicité est la sophistication suprême" - Léonard De Vinci
- "Ce qui est facile à comprendre ou à faire pour toi, ne l'est pas forcément pour l'autre." - Mon pèrei
Mes projets sur Github - Blog - Site DVP
salut beanz
et merci pour ton aide qui a réglé mon problème
avec le paquet de cette page: http://sourceforge.net/p/lazarus-ccr...ee/components/
cependant j'ai voulu essayer ça avec un Label
mais j'ai pas pu faire un espacement entre la fin et le début d'une nouvelle phrase.
qui pourra me corriger ça?
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 var Form1: TForm1; txt2:string; procedure TForm1.Timer1Timer(Sender: TObject); var txt1: string; begin txt1 := txt2; Label1.Caption := Copy(txt1,2, Length(txt1) - 1)+' '+Copy(txt1,1,1) ; txt2:=Copy(txt1,2, Length(txt1) - 1)+Copy(txt1,1,1); end; procedure TForm1.Timer1StartTimer(Sender: TObject); begin txt2:='Bonjour à tous' end;
merci d'avance.
Ce pourrait être ceci :
Notes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 procedure TForm1.Timer1Timer(Sender: TObject); begin Label1.Caption := Copy(VTxt,2, Length(VTxt) - 1) + Copy(VTxt,1,1); VTxt:= Copy(VTxt,2, Length(VTxt) - 1) + Copy(VTxt,1,1); end; procedure TForm1.Timer1StartTimer(Sender: TObject); begin Vtxt:=' ' + 'Bonjour à tous'; end;
* la variable txt1 est inutile ;
* il suffit d'ajouter l'espace intercalaire au début de la chaîne à faire défiler.
A bientôt,
Gilles
Bonsoir
c'est ce que je cherchais, merci Gilles
J'ai amélioré les codes précédents en codes suivants:
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
34
35
36
37
38
39
40
41 var Form1: TForm1 ; i,j:integer; procedure TForm1.Timer1Timer(Sender: TObject); var txt1:string; begin if i<16 then begin if i=9 then // pour sauter le caractère accentué i:=10; txt1:='Bonjour à tous'; label1.Caption :=copy(txt1,1,i); end else if i<84 then label1.Caption :=label1.Caption+' ' else i:=0; i:=i+1; end; procedure TForm1.Timer1StartTimer(Sender: TObject); begin label1.Width:=392 ; label1.Alignment:=tarightJustify ; Timer1.Interval:=100 ; i:=j; end; procedure TForm1.Timer1StopTimer(Sender: TObject); begin j:=i end; procedure TForm1.Button1Click(Sender: TObject); begin if timer1.Enabled=true then timer1.Enabled:=false else timer1.Enabled:=true ; end;
merci à tous
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager