Temps depuis le démarrage de windows

Soyez le premier à donner votre avis sur cette source.

Vue 7 102 fois - Téléchargée 47 032 fois

Description

Ce qu'il apprend (si e n'est pas déjà fait):

- Utilisation de l'opérateur modulo (%)
- Utilisation de la fonction GetTickCount() de l'api windows

- rien d'autre...

exemple de sortie:

0 Jour(s) 0 Heure(s) 36 Minute(s) 22 Seconde(s)

Source / Exemple :


DWORD temps = GetTickCount();       // récupère le temps de lancemetn de windows en ms. API Windows

 float Jours, Heures, Minutes, Secondes;
 DWORD reste;                        // il faut utiliser un DWORD et pas un float car float refuse Modulo

 Jours    = temps / (1000*60*60*24); // millisecondes, secondes, minutes, heures -> jours
 reste    = temps % (1000*60*60*24); /// opérateur Modulo (récupère le reste de la division)

 Heures   = reste / (1000*60*60);
 reste    %=        (1000*60*60);    //ceci est uen contraction de reste = reste % (1000*60*60)

 Minutes  = reste / (1000*60);
 reste    %=        (1000*60);

 Secondes = reste / (1000);

 //maintenant tout arrondir à 0 décimale:

 Jours    = RoundTo(Jours   , 0);    //cette fonction n'est pas standard (BCB),
 Heures   = RoundTo(Heures  , 0);    //que puis-je utiliser à la place ?
 Minutes  = RoundTo(Minutes , 0);    //à savoir que passer dans un int pose parfois problème...
 Secondes = RoundTo(Secondes, 0);

 //affichage dans le titre de la fenêtre sous BCB  (ne l'utilisez pas avec un autre compilo)
 Caption = FloatToStr(Jours)    + " Jour(s) "
         + FloatToStr(Heures)   + " Heure(s) "
         + FloatToStr(Minutes)  + " Minute(s) "
         + FloatToStr(Secondes) + " Seconde(s) ";

 //pour afficher en mode console, je suppose que c'est comme ceci:
 //cout << Jours << " jours(s) " << Heures << " heure(s) " << Minutes << " minute(s) " << Secondes << " seconde(s)" << endl;
 //alors il faut inclure iostream.h et utiliser "using namespace std;"

 //pour virer le (s), il faut utiliser ceci:
 //String j += ( (Jours > 1) ? "s" : "" );
 //faire de même pour tous et puis concaténer
 //en partant du principe que vous utilisez la librairie String.h
 //sinon remplacer par AnsiString sous Builder.

Conclusion :


Ce qui pourrait bien donner:

- une fenetre transparente qui affiche le temps au niveau du bureau (desktop).

14h08: J'ai ajouté le code source C++ Builder 6 pour créer une fenêtre de ce type qui affiche l'heure ds le coin de l'écran. Faut recompielr pr changer la couleur et ajotuer manuellement l'entrée ds la base de registre lol, mais sinno ça marche bien. regardez aussi le .cpp du projet pr la ligne qui cache l'appl ide la barre de tâche (trouvé sur developpez.com)

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
121
Date d'inscription
mardi 3 mai 2005
Statut
Membre
Dernière intervention
31 décembre 2005

bonne remark a propos de float
int donne une tres bonne utilisation....
Messages postés
8
Date d'inscription
vendredi 9 avril 2004
Statut
Membre
Dernière intervention
26 juillet 2004

c'est tres jolie ton programme kirua
Messages postés
3006
Date d'inscription
dimanche 14 avril 2002
Statut
Membre
Dernière intervention
31 décembre 2008

bon pour ceux que ça intéresse: http://nboumal.free.fr/source_temps_win.zip
657Ko
Messages postés
3006
Date d'inscription
dimanche 14 avril 2002
Statut
Membre
Dernière intervention
31 décembre 2008

le code source est trop gros (sacré BCB), donc juste l'exe ds le zip (dll borland incluses) et puis pr le code source c'est

//-- serveur FTP free.fr inaccessible. je reviendrai

environ 650Ko, sans l'exe.
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
18
Je me suis permis de la republier finie avec fenetre.
ciao...
Afficher les 10 commentaires

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.