Associer un trackbar et un label [Résolu]

bdp8 9 Messages postés dimanche 12 février 2006Date d'inscription 22 avril 2008 Dernière intervention - 5 mai 2007 à 14:44 - Dernière réponse : bdp8 9 Messages postés dimanche 12 février 2006Date d'inscription 22 avril 2008 Dernière intervention
- 6 mai 2007 à 01:10
Bonjour,
j'ai un probléme concernant le Trackbar , voila je veux faire un bandeau déroulant avec un Timer et un trackbar qui augmente la vitesse de défilement.
Bon j'arrive a faire le défilement, cependant Ce que j'ai c'est que lorsque je change le trackbar ( onchange associé
au Timer) la vitesse augmente mais juste si je reste appuyer sur le
trackbar.

Ensuite la vitesse diminue lorsque j'arrête d'appuyé sur le trackbar.

Est ce que qqun aurait une idée là-dessus ?

Aidez les jeunes developpers......
Afficher la suite 

Votre réponse

10 réponses

Meilleure réponse
florenth 1105 Messages postés dimanche 1 août 2004Date d'inscription 17 août 2008 Dernière intervention - 5 mai 2007 à 17:26
3
Merci
Ahh zut, problème d'édition avec cette FreeTextBox, je croyais pourtant l'avoir mis mais il faut mettre un "-" (signe moins) ici : "if label1.Left < -
label1.width then"

Merci florenth 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

Commenter la réponse de florenth
florenth 1105 Messages postés dimanche 1 août 2004Date d'inscription 17 août 2008 Dernière intervention - 5 mai 2007 à 16:11
0
Merci
Salut,

Tu pourrais nous passer ce que tu as mis dans le OInChange de ton Trackbar pour qu'on puisse exterminer ce bug ?
merci...

++
Commenter la réponse de florenth
bdp8 9 Messages postés dimanche 12 février 2006Date d'inscription 22 avril 2008 Dernière intervention - 5 mai 2007 à 16:30
0
Merci
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, Spin, ComCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Timer1: TTimer;
    Panel1: TPanel;
    Button3: TButton;
    TrackBar1: TTrackBar;
    procedure TrackBar1Change(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Déclarations privées }
  public
    { Déclarations publiques }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Timer1Timer(Sender: TObject);
begin

label1.Left := label1.Left-1;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
Timer1.Enabled := not Timer1.Enabled;
  label1.Left:=(panel1.Width);

end;

procedure TForm1.TrackBar1Change(Sender: TObject);
begin
        label1.Left := label1.Left-1;
end;

end.

Voila.
Commenter la réponse de bdp8
bdp8 9 Messages postés dimanche 12 février 2006Date d'inscription 22 avril 2008 Dernière intervention - 5 mai 2007 à 16:32
0
Merci
j'aurai voulu mettre aussi qqch de la forme

timer1.interval := 1

Lorsque je change la position du trackbar timer1.interval diminu !
Commenter la réponse de bdp8
florenth 1105 Messages postés dimanche 1 août 2004Date d'inscription 17 août 2008 Dernière intervention - 5 mai 2007 à 17:21
0
Merci
Et bien tu n'as qu'a mettre:

Timer1.Interval := TrackBar1.Position ^^

et c'est tout bon !
Commenter la réponse de florenth
florenth 1105 Messages postés dimanche 1 août 2004Date d'inscription 17 août 2008 Dernière intervention - 5 mai 2007 à 17:24
0
Merci
Eh, mais j'y pense, avec ce que tu as mis dans le OnTimer, le label ne va jamais réapparaitre !

Il faudrait plutot faire :

Voila ton unité corrigée :
<hr size="2" width="100%" />procedure TForm1.Timer1Timer(Sender: TObject);
begin
  label1.Left := label1.Left - 1;
  if label1.Left < label1.width then
    label1.Left := panel1.Width;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
  Timer1.Enabled := not Timer1.Enabled;
  label1.Left:=panel1.Width;
end;

procedure TForm1.TrackBar1Change(Sender: TObject);
begin
  Timer1.Interval := TrackBar1.Position;
end;
<hr size="2" width="100%" />
Bonne chance pour la suite...
++
Flo
Commenter la réponse de florenth
bdp8 9 Messages postés dimanche 12 février 2006Date d'inscription 22 avril 2008 Dernière intervention - 5 mai 2007 à 17:29
0
Merci
OK merci beaucoup,

la quand je met le curseur du trackbar au minimum le text s'arréte.
et puis la vitesse ne varie pas tros !
Est ce que c'est normal ?
Commenter la réponse de bdp8
florenth 1105 Messages postés dimanche 1 août 2004Date d'inscription 17 août 2008 Dernière intervention - 5 mai 2007 à 18:36
0
Merci
Oui c'est normal que le texte s'arrete et que la vitesse ne bouge pas trop.
Il faut que tu mettes dans l'inspecteur d'objet (pour ton trackbar):
- Max := 1000;
- Min := 50;

et là, ça devrait allez beaucoup mieux.

Oublie pas de valder les réponses qui te conviennent.

++
Flo
Commenter la réponse de florenth
bdp8 9 Messages postés dimanche 12 février 2006Date d'inscription 22 avril 2008 Dernière intervention - 6 mai 2007 à 00:27
0
Merci
voila le lien vers mon programme.
http://rap041.free.fr/BD%20biss.rar

Bah Il ya une différence entre quand j'appuye sur le track bar sa va moins vite, mais sinon sur toutes position du trackbar c'est la meme chose !
Commenter la réponse de bdp8
bdp8 9 Messages postés dimanche 12 février 2006Date d'inscription 22 avril 2008 Dernière intervention - 6 mai 2007 à 01:10
0
Merci
c'est bon probléme regler au niveau de l'inspecteur d'objets , avec plusieurs teste !!
encore merci !
Commenter la réponse de bdp8

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.