Bonjour,
j'ai réussis grace au foum à changer la couleur d'une ComLed avec le code suivant:
ComLed1->Kind = lkGreenLight; Elle s'allume en vert
L'idéal pour moi est de la vert clignoter en vert.
Merci.
Qui dit mieux, Peut le mieux!!!
Bonjour,
j'ai réussis grace au foum à changer la couleur d'une ComLed avec le code suivant:
ComLed1->Kind = lkGreenLight; Elle s'allume en vert
L'idéal pour moi est de la vert clignoter en vert.
Merci.
Qui dit mieux, Peut le mieux!!!
Ben si tu peux l'éteindre, fait une boucle qui l'allume et qui l'éteint...
![]()
Du bon sens tu auras
Du bon sens tu auras encore
Du bon sens tu auras toujours
http://emilien.bresson.free.fr
Désolé tu n'y est pas.
Ma led s'alume lorsque j'ouvre mon port à l'aide d'un bouton de connexion.
si je fais une boucle....................je te laisse imaginer la suite. A moins que...
Le bon sens, qui l'a vraiment?![]()
![]()
Salut !
En utilisant probablement un TTimer permettant à intervalle régulier de modifier une propriété de l'objet qui définit son apparence.
Dans la OnTimer du timer, il suffit de mettre la propriété de l'objet en bascule (flip flop):
if(Led->Etat == allumee) Led->Etat = eteinte
else(Led->Etat = allumee)
Si cette propriété est du type booléen, le traitement se réduit à faire :
Led->Etat = !Led->Etat
Si l'effet n'est pas immédiat (ce qui serait étonnant mais parfois...) alors on peut rajouter :
Led->Repaint();
Comme je ne connait pas le composant, je te donne juste l'idée.
A noter que je n'ai pas mis les balises de code volontairement !
A plus !
J'ai faits ça
Mais ça ne marche pas: Le compilot dit: Symbole IsOn non définit or cette proprieté est dans l'inspecteur d'objet de mon composant( ComLed): c'est la Proprieté State=IsOn ou IsOff
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 void __fastcall TForm1::Timer1Timer(TObject *Sender) { if(ComLed->State==IsOn) { ComLed->State==IsOff else { ComLed->State == IsOn) } ComLed->Repain(); } }
![]()
![]()
Salut !
C'est tout ce que je peux dire pour l'instant !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 if(ComLed->State == IsOn) ComLed->State = IsOff; else ComLed->State = IsOn; ComLed->Repaint(); //<<< tester si c'est nécessaire
A plus !
Salut !
Si on considère que la led ne peux clignotter que si le port est ouvert, on peut laisser le timer tourner en permanence en encadrant le flip flip avec un test :
si Comport est ouvert alors on execute le flip flop
sinon si la Led est allumée alors on éteint la Led
Je pense que l'instruction Repaint() n'est pas indispensable car le rafraichissment semble être pris en compte dans la gestion de la propriété (comme les sources sont rédigées pour Delphi...). Il suffit de faire le test avec et sans !
Pour ce qui est des variables de la propriété State de la led :
TLedState = (lsOff, lsOn);
je pense pouvoir supposer qu'il s'agit d'une énumération à la Delphi.
Attention à la confusion possible entre lsOn et lsOff (ce qui semble correcte) et IsOff ou IsOn (qui ne le sont pas) !!! Je me suis fait avoir aussi !![]()
A plus !
Le compilot dit: Symbole IsOn non définit
Options et avertissements non restaurés
Identificateur de membre attendu
là je cogne malgré votre aide![]()
![]()
![]()
![]()
Bonjour
tu ecrit I (i) mais ses un l (L) que lont doit ecrire
elle flasche bien ici a+
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 void __fastcall TForm1::Timer1Timer(TObject *Sender) { if(ComLed1->State ==lsOn) ComLed1->State =lsOff ; else ComLed1->State =lsOn; }
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