Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Un label: Comment arrêter son clignotement infini [ Base de données / Autre ] (leader2000)

mercredi 18 juin 2008 à 01:33:54 | Un label: Comment arrêter son clignotement infini

leader2000

Salut!

Ma question est basée sur un mecanisme de "temps donné".
J'utilise trois composants simples un Timer1, un Tbutton1 et Label1.
Dans la propriété "Interval" de mon Mon Timer1,  je mets une vitesse de 250. Et j'écrits cette ligne de code dans l'événement "OnTimer": Label1.visible:= not label1.visible;
Et alors dans l'événement OnClick de mon Tbutton1, je mets ces codes d'enregistrements après lequels je veux demander d'afficher le mot "attention..." qui est le "caption" dans mon Label1. Et ce dernier clignotera à une vitesse de 250 comme mentionné ci-haut.

AdoTable1.Append;
AdoATble1.FieldByName('Nom').assTring;
AdoTable1.Post;
Label1.Caption:=  Label1.Caption; //Juste là, ça marche!

Mais alors, ma préoccupation est de voir ce Label1 arrêtait son clignotement juste après 3 secondes.
Sans ça, il ne pourra pas s'arrêter...son clignotement sera infinini. Comment faire?
Developper est une dimension
pour moi.

Leader2000

mercredi 18 juin 2008 à 02:41:06 | Re : Un label: Comment arrêter son clignotement infini

f0xi

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !

var
  TimerDelta : cardinal = 0; // nombre de declanchement de OnTimer
  TimerSecRun: cardinal = 0; // nombre de secondes ecoulées


(...)
Label1.Tag := TimerSecRun + 3; // secondes ecoulées + 3 secondes
(...)


procedure TForm1.Timer1OnTimer(Sender: TObject);
begin
  inc(TimerDelta);
  TimerSecRun := round(TimerDelta * (Sender as TTimer).Interval * 0.001);

  if Label1.Tag >= TimerSecRun then // clignote pendant 3 secondes
    Label1.visible := not Label1.visible;
end;






mercredi 18 juin 2008 à 03:24:54 | Re : Un label: Comment arrêter son clignotement infini

jackalunion



F0XI , merci beaucoup car j'avais un broblème du même type .
  Vous m'avez eclairer avec votre exemple


mercredi 18 juin 2008 à 08:57:52 | Re : Un label: Comment arrêter son clignotement infini

Francky23012301

Membre Club

P'tain : t'as combien de pseudo toi ? Entre Leader2000, New2000,Old2000,Crazy2000,Biloute2000,Bird2000,Quake2000,Slupp2000.

Faudrait peut etre arrété là Jenny .

Bon puis les questions pourraves, faudrait aussi arreter . On a un cerveau faudrait pas hésiter à l'utiliser de temps en temps. Promis ca fait pas mal

Pourquoi je dis ca : Car avec un minimum de réflexion, on trouve une solution.

1)On crée une variable globale :
Temps:Cardinal;

2)On initialiser dans le TButton Temps à zéro
Temps:=0;

3)A chaque appel du OnTimer, on ajoute à Temps, le temps écoulé
Temps:=Temps+Timer1.Interval;

Timer1.Interval : C'est le temps écoulé

4)On regarde la valeur de temps, si temps est supérieur à 3s (3000ms) on rend le label invisible :

If Temps>3000 Then Label1.Visible:=False;


C'est quand meme pas d'un niveau d'intélligence extraordinaire si ?
Faut arréter le réflexe "Forum", et abuser de son cerveau.

La réflexion / intélligence ce n'est pas que innée : ca se cultive aussi


vendredi 20 juin 2008 à 14:21:19 | Re : Un label: Comment arrêter son clignotement infini

leader2000

Salut Foxi,
Merci pour tes codes.
Voilà ce que je fais mais le clignotement continue toujours sans s'arrêter après 3 secondes comme prévu.

procedure TForm1.Button1Click(Sender: TObject);
  var TimerDelta,TimerSecRun  : cardinal;
begin
  Label1.Tag := TimerSecRun + 3; // secondes ecoulées + 3 secondes
end;
procedure TForm1.Timer1Timer(Sender: TObject);
  var TimerDelta,TimerSecRun  : cardinal;
begin
  inc(TimerDelta);
  TimerSecRun := round(TimerDelta * (Sender as TTimer).Interval * 0.001);
  if Label1.Tag >= TimerSecRun then // clignote pendant 3 secondes
  Label1.visible := not Label1.visible;
end;


N.B. Merci aussi à Franky pour ces gentils remarques.

Developper est une dimension pour moi.
Leader2000


vendredi 20 juin 2008 à 16:52:30 | Re : Un label: Comment arrêter son clignotement infini

Francky23012301

Membre Club
Réponse acceptée !
Jenny (tu vois je suis cool j'ai finis mon taff et plutot que de rentrer je te répond ) : la question n'est pas de savoir si mes remarques sont gentilles ou pas.
Je préfere donner un bon coup de pompes aux fesses de quelqu'un et de le reveiller, plutot que de me dire "Bon allez je lui file : il est trop bete pour réflechir".


Je dirais en substance : Un forum est là pour aider : Cependant ca ne dispense en rien ni de chercher ni de réflechir. Certains ont tendance à l'oublier .

Par exemple là :

procedure TForm1.Button1Click(Sender: TObject);
  var TimerDelta,TimerSecRun  : cardinal;
begin
  Label1.Tag := TimerSecRun + 3; // secondes ecoulées + 3 secondes
end;
procedure TForm1.Timer1Timer(Sender: TObject);
  var TimerDelta,TimerSecRun  : cardinal;
begin
  inc(TimerDelta);
  TimerSecRun := round(TimerDelta * (Sender as TTimer).Interval * 0.001);
  if Label1.Tag >= TimerSecRun then // clignote pendant 3 secondes
  Label1.visible := not Label1.visible;
end;

Premiere chose qui me choque : tu vérifie en continue la valeur du Tag ( if Label1.Tag ) mais à quel moment la valeur du Tag change ? Jamais (si si regarde bien). A aucun moment dans le onTimer tu refais Label1.Tag:=TimerSecRun;

Allez on va pas passer 3 ans la dedans : voici la solution

procedure TForm1.Button1Click(Sender: TObject);
begin
  Label1.Tag:=0; 
  Timer1.Interval:=100; 
  Timer1.Enabled:=True;

end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Label1.Tag:=Label1.Tag+Timer1.Interval;
  If Label1.Tag<3000 Then Label1.visible := not Label1.visible
Else  Label1.visible:=False;

end;

Seconde chose qui me choque : on a le sentiment que tu codes des choses sans meme les comprendre.

Pour finir ma remarque n'a rien de méchante : Mais bon hormis que ca saoule de redire 50 000 fois la meme chose, il faut arreter de passer sa journée sur le net afin d'obtenir du tout cuit. Si tout le monde attendait que le copain fasse un machin, on en serait encore à l'homme de la préhistoire . Donc de temps on lache son pc, on prend son stylo, on prend son papier, on se met la tete entre les mains et on réfléchit . Si tu ne fais pas ca, tu ne progresseras jamais.

La preuve Jenny : ca fait 1 an et demi que tu es ici. Et apres 1 an et demi de developpement intensif, tu en es toujours au meme stade (Proche de la nullité : désolé le but n'est pas de te blesser). Tout ca parce que tu t'es jamais donné la peine d'essayer de comprendre la moindre chose. Je trouve plutot cela triste/dommage pour toi .

Moi ce que je supporte pas (et je finirais la dessus) : c'est que moi je m'éfforce à ne pas polluer le forum quitte a parfois en baver sacrément (en passant des semaines et des semaines sur un truc con), alors que d'autres en ont rien à sécouer et pollue constamment.


vendredi 20 juin 2008 à 18:22:32 | Re : Un label: Comment arrêter son clignotement infini

Francky23012301

Membre Club
Pour finir : ta question était tout simplement "comment faire un chronomètre". Je pense qu'une personne qui code depuis 1 an et demi, devrait avoir dépasser ce  stade là...

Je pense qu'une telle question "comment faire un chronomètre" contribue grandement à la pollution de ce site.

Pour finir : Que tu ai 1 ou 10 pseudos ..... en définitif je m'en fous .
Par contre si tu étais le webmaster de ce site, je pense que ca te ferait mal de voir tes stats flouder    .... a cause de ce genre de chose .
Cependant je comprend tres bien, que c'est un moyen efficace de flooder sans se faire repérer (Ne voyant pas d'autres utilités à la chose ) ....



Cette discussion est classé dans : label, caption, label1, clignotement, arrêter


Répondre à ce message

Sujets en rapport avec ce message

envoie d'1 mail a partir d'un label.caption [ par dlstaq ] Comment faire pour envoyer un mail en cliquant sur un label.caption sachant que l'adresse mail est toujours différente.Merci de vos réponses. colorier un label [ par elkike ] je veux colorier un label.... mais cela doit être dynamique...je dois utiliserForm1.label1.refresh.color:=ouForm1.label1.repaint.color:=ou autre chose LoadFromFile [ par Metrox ] 'lut all,J'aimerais faire un:Image1.picture.loadfromfile(label1.caption);avec label1.caption:='C:|monimage.jpg';mais il me dit:format de fichier incon Changer le Caption d'un Label en cours de programme... [ par mentral ] Bonjour à tous,J'aimerais savoir comment faire pour changer le contenu du Caption d'un Label présent sur l'interface de mon programme, et ce durant l' Label.caption multilignes??? [ par jmp77 ] Bonjour,Est ce que quelqu'un saurait comment activer la propriété caption d'un tlabel en mode conception pour que l'on puisse saisir du texte sur plus Effacer label en groupe [ par benumiit82 ] Bonjour, voila ma question est très simple... sur ma fenetre j'ai plein de caption, de edit... Je voudrais savoir si y'a une syntaxe qui permettrais Question sur un opérateur. [ par Becracker ] Salut les gars, Je voudrai savoir comment faire avec la méthode suivante, qui signifie si Label1.caption contient 'mot', montrer message "Il le conti Subliminal [ par PhilLU ] alut, Je tente de créer une appli qui reproduit ce que fait 'Subliminal Messages Flash 2.11' (http://www.soft32.com/download_122180.html), càd affiche API Windows [ par michelroc ] Bonjour,J'ai ecris ce code et la reponse est toujours négative ?? Y a t-il une erreur dans ce code.Windows XP fam// Savoir si l'écran de veille est ac query [ par saimslim ] salut je cherche le code equivalent a ce lui cimon exemple:pour le composant table:             label1.caption:=table1['nom']+table1['prenom'];l'equiv


Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode

Téléchargements



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,484 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.