Pb led

Résolu
Signaler
Messages postés
30
Date d'inscription
jeudi 29 septembre 2005
Statut
Membre
Dernière intervention
23 décembre 2011
-
Messages postés
615
Date d'inscription
dimanche 13 août 2006
Statut
Membre
Dernière intervention
13 décembre 2018
-
Bonjour,

Voila j'ai une led que j'allume en vert ou en rouge selon l'état de mon imprimante. Le probleme est qu'elle clignote car je fais une demande de statut dans un thread. Et à chaque statut je la reinitialise.

J'ai essayé cela : 
            if ledPaper.picture <> ledGreen.picture then ledGreen.picture

Mais sa ne marche po.
Est-ce qu'il faut que je definisse un etat avec la propriété "Tag"

Merci de m'aider.

9 réponses

Messages postés
4202
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
13 juin 2020
38
Une LED qu'elle soit physique ou "virtuelle" cad un dessin sur une fiche, il lui faut un etat electrique ON/OFF soit en code un etat Boolean.

en gros :

var LedStatus : boolean;
beginLedStatus :(Printer.Status psOn);

If LedStatus then
   LedPicture.LoadFromFile('LedOn.bmp')
else
   LedPicture.LoadFromFile(LedOff.bmp');
end;

c'est un exemple.

<hr size="2" width="100%" />Croc (click me)
Messages postés
814
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
3
...

pas compris question.


t'as une LED ? une petite ampoule physique qui fait de la lumière ?

tu fais une "demande de status dans un thread"?

a "chaque status" tu la reinitialise?

c'est quoi "ledPaper"? un TImage? si oui, appeler .picture ne vas rien faire. et "ledPaper.picture <> ledGreen.picture" risque de toujours être vrai.


Si tu sais pas ça et que tu codes avec des thread, je voudrais bien voir ton code. (par curiosité)


soit dit en passant, si tu affectes plusieurs fois de suite la même valeur à une image (ou une var) tu ne devrait pas voir de clignotement.


stp, reformule ta question. essai d'être exact sur les termes employés (appele un chat un chat)
Messages postés
30
Date d'inscription
jeudi 29 septembre 2005
Statut
Membre
Dernière intervention
23 décembre 2011

Mais si sa marche. Essaie tu verras!  mais laisse tombé.

Si on n'est pas la pour aider il ne faut pas repondre!!
Messages postés
814
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
3
mdr.
Messages postés
1173
Date d'inscription
mercredi 2 novembre 2005
Statut
Membre
Dernière intervention
10 septembre 2011
3
Salut,

>>>Si on n'est pas la pour aider il ne faut pas repondre!!

Loda a essayé de t'aider. Seulement, ta question est assez mal formulée...

@+
 Matt

<hr size="2" width="100%" />La paresse est la mère du génie...
http://www.delphilab.com
Messages postés
30
Date d'inscription
jeudi 29 septembre 2005
Statut
Membre
Dernière intervention
23 décembre 2011

Je suis d'accord mais il ne faut pas parler comme cela. il m'a pris de haut.

"Si tu sais pas ça et que tu codes avec des thread, je voudrais bien voir ton code" ne se dit pas. si je lui montre mon code je l'etonne !!

enfin y'a des gens comme sa qui serve a rien et je suis debutant il faut bien que j'apprenne mais par des question bete!!
Messages postés
1173
Date d'inscription
mercredi 2 novembre 2005
Statut
Membre
Dernière intervention
10 septembre 2011
3
Oui c'est vrai, je n'avais pas fait attention au début de la phrase. Rappel : on a tous été débutant (et je me considère toujour comme un) et on a tous posés des question bêtes un jour ou l'autre. C'est comme cela que l'on apprend.

<hr size="2" width="100%" />La paresse est la mère du génie...
http://www.delphilab.com
Messages postés
814
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
3
je ne peux pas te donner de réponse plus complète sans un minimum d'info.

pour être plus précis:

en admettant que ledPapier est un Timage (ce que tu ne m'as toujours pas dit)

on faisant "Image.Picture <> Image2.Picture" tu compare l'ADRESSE de deux instance de TPicture.

même si tu as affecté une valeur à image.picture, l'adresse serra différente. EN effet, la lib ne garde pas un pointeur sur l'instance, mais fait un assign avec le parametre.
tu peux t'en rendre compte en lisant le code de TImage.SetPicture.

et "image.picture" tout seul ne fait rien du tout! tu te ne fait qu'appeler une function dont tu ne lit/utilise pas le resulat.

si ce genre de choses n'est pas clair pour toi, tu risque d'avoir un grand nombre de problème à coder une application multithread. et même monothread en fait.

et si tu souhaite que l'on prenne du temps (que je pourrait utiliser a faire autre choses) pour te repondre, donnes toi la peine de poser une question un peu plus clair, en nous donnant les info dont on a beoin pour te répondre. Par exemple, indiquer le type des var lors que ce n'est pas évident.

"essaie tu verra", je voudrais bien. essayer quoi? tu ne nous a pas donner de code...

sur ce,

cordialement
Messages postés
615
Date d'inscription
dimanche 13 août 2006
Statut
Membre
Dernière intervention
13 décembre 2018
3
Personnellement, j'utilise la métode de fOxi, et ça marche bien![javascript:Insert_Emoticon('/imgs2/smile.gif'); ]

c'est curieux, cette tension qu'il y a danscertainséchanges.[javascript:Insert_Emoticon('/imgs2/smile_angry.gif'); ]

j'ai moi même proposé une solution à un participant avec un petit bout de code, et pas de réponse... Or je sais que ce participant est revenu sur le site. se désintéresse t-il à ce point de sa propre question?[javascript:Insert_Emoticon('/imgs2/smile_question.gif'); ]

Excusez moi, si c'est pas l'endroit pour discuter, mais je suis nouveau sur ce site extrêmement riche en solutions... Un vraibonheur!

soyons cool, la vie est assez pénible come ça!!

Jean_Jean