Question heure et enclenchement [Résolu]

Signaler
Messages postés
110
Date d'inscription
dimanche 2 mars 2003
Statut
Membre
Dernière intervention
19 juin 2012
-
Messages postés
4199
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
2 janvier 2019
-
bonsoir

je voudrai savoir comment faire pour qu'un composant shape1 devienne vert a un jour et heure programmer ?

merci d'avance

8 réponses

Messages postés
4199
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
2 janvier 2019
28
alors ...

tu as la fonction "Now" qui donne l'heure et date systeme.
DateTimePicker1.DateTime donne l'heure et date choisi.

y'a plus qu'a comparer les deux :

const
SHC : array[boolean] of integer = (clred, clgreen);
begin
Shape1.Brush.Color := SHC[DateTimePicker1.DateTime < Now];
end;

si la condition est fausse, Shape1 sera rouge sinon verte.

maintenant, a toi de bien comprendre cela, c'est pas si complexe.
Messages postés
110
Date d'inscription
dimanche 2 mars 2003
Statut
Membre
Dernière intervention
19 juin 2012

merci c'est nickel j'ai reussi! dsl encore de ne rien avoir compris lol

bonne journée
Messages postés
4199
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
2 janvier 2019
28
ProgrammedTime : TDateTime; { = StrToDateTime('11/08/2009 12:00') }


const
SHC : array[boolean] of integer = (clred, clgreen);
begin
Shape1.Brush.Color := SHC[ProgrammedTime > Now];
end;
Messages postés
110
Date d'inscription
dimanche 2 mars 2003
Statut
Membre
Dernière intervention
19 juin 2012

ok merci pour la rep

mais y'a un truc que je comprend pas c'est bien deux datetimepicker qu'in faut que j'utilise ?

dsl je suis un peu perdu la
Messages postés
4199
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
2 janvier 2019
28
non, tu pourrais mais par exemple :


DataTimePicker1 te permet de programmer la date et l'heure de l'evenement, donc tu stock cette donnée dans ProgrammedTime, variable DateTime.

ensuite, dans le gestionnaire qui permet de declancher les evenements tu ajoute le code.

tu peux sauver ProgrammedTime dans un fichier Ini ou dans le registre soit sous forme de flottant (double) soit sous forme de chaine (string avec DateTimeToString).
Messages postés
110
Date d'inscription
dimanche 2 mars 2003
Statut
Membre
Dernière intervention
19 juin 2012

oulala lol eux je suis debutant dans la matiere encore dsl je comprend pas tout tout la!!!!
Messages postés
110
Date d'inscription
dimanche 2 mars 2003
Statut
Membre
Dernière intervention
19 juin 2012

pour faire plus simple pour moi est ce qu'on pourrai prendre datetimepicker1 comme reference c'est a dire qu'il avance automatiquement avec les jour et un autre datetimepicker qui permet de programmer le jour ou le shape1 devient vert??
Messages postés
4199
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
2 janvier 2019
28
bravo, pense toujours à chercher a comprendre le fonctionnement d'un type ou d'une methode de façon complete, ça t'aidera beaucoup.

exemple : qu'est ce que TDateTime ?

recherche -> TDateTime est un flottant type Double (64bits)

comment y est stocké le temps ?

voir EncodeDateTime / DecodeDateTime -> ok je comprend on multiplie les valeurs par des ratios unité de temps/par jours etc...

conclusion :

plus la date est dans le futur, plus le chiffre flottant est grand, et inversement plus elle est dans le passé, moins le chiffre est grand.
comme un compteur qui s'incremente.
comme GetTickCount, QueryPerformanceCounter, TimeStamp etc.