www.dclogiciel.fr.st
LANGUEDOC WEB
www.dclogiciel.be.tf
Accueil
Mes liens

DéQuéFas
Ce fichier source en RapidQ est distribué gratuitement par LANGUEDOC WEB.

Petit utilitaire humoristique indiquant depuis combien de temps votre ordinateur est allumé. (Utilisation de l'API "GetTickCount" - Réalisé par Daniel CALERO)

Ce fichier se nomme dquefas.bas, sa taille totale est de 5 ko.
Surtout n'hésitez pas à me contacter pour me faire part de votre avis ou de toutes suggestions et Recommandez cette page.

' Affichage depuis combien de temps l'ordinateur est allumé avec une pointe d'humour

'Déclaration de la fonction GetTickCount qui se sert de la librairie Windows kernel32.dll qui contient une fonction GetTickCount qui n'a pas besoin d'argument et qui retournera une variable de type long
Declare function GetTickCount lib "kernel32.dll" alias "GetTickCount" () as long
'Déclaration de ma procédure nommé form_click
declare sub form_click
'Je mets un titre à mon logiciel, sert généralement si vous utilisez une boite de message automatique comme showmessage pour éviter que s'affiche le nom du fichier
application.title = "... T'as pas autre chos' à foutre !"
'Je déclare ma feuille principale et la mets en forme
dim form2 as qform
Form2.caption = "Depuis combien de temps je bosse ?" 'Je lui donne un titre
form2.width = 350 'je définis sa longueur
form2.height = 50 'je définis sa hauteur
form2.borderstyle = 5 'je définis sa bordure
'je déclare une étiquette et la mets en forme
dim label1 as qlabel
label1.parent = form2 'Je signale que mon étiquette fait partie de la feuille FORM2
label1.top = 0 'Je défini son emplacement sur la feuille par rapport au haut
label1.left = 0 'Je défini son emplacement sur la feuille par rapport à la gauche
label1.autosize = 0 'Je défini que la taille de l'étiquette ne soit pas automatique
label1.height = form2.clientheight 'Je défini sa hauteur, ici égale la hauteur hors barre de titre de la feuille
label1.width = form2.clientwidth 'Je défini sa longueur, ici égale la longeur de la feuille hors la bordure.
label1.onclick = form_click 'J'indique quelle est la procèdure à appeller lorsqu'on clique sur l'étiquette (La procèdure a été déclarée précédemment)
label1.color = rgb(220,232,220) 'Je donne une couleur de fond à l'étiquette
label1.caption = "CLIQUE ICI POUR AVOIR LA REPONSE" 'J'indique le texte de l'étiquette
label1.cursor = -21 'J'indique que la souris lorsqu'elle se trouve sur l'étiquette devra être une MAIN
form2.center 'J'indique que la feuille FORM2 devra être centré sur l'écran

'Maintenant, j'écris ma procédure déclarée au debut
sub
form_click 'Début de la procèdure

dim lngTickCount as long 'Je déclare une variable de type LONG car c'est de ce type que va être retournée la variable de la fonction GetTickCount
form2.caption = "WWW.DCLOGICIEL.FR.ST" 'Je change le titre de ma fenêtre principale et me fais un peu de pub !
form2.top = form2.top - 50 'Je monte vers le haut de l'écran ma fenêtre de 50 pixels pour qu'on la voit (A y être... non ?)
lngTickCount = GetTickCount 'Je lance ma fonction pour connaître depuis combien de temps mon ordinateur est allumé. La valeur retournée est en milliseconde. Et je la stocke dans ma variable lngTickCount.
seconde = round(lngTickCount/1000) 'Je divise la valeur retournée par mille pour avoir le nombre de seconde. Seconde entière arrondi avec la fonction ROUND
minute = seconde / 60 'Je divise mes secondes par 60 pour connaître le nombre de minutes
heure = int(minute /60) 'Je divise par 60 mes minutes pour connaître le nombre d'heure et je ne garde que le chiffre ENTIER en utilisant la fonction INT.
minute = minute mod 60 'Je divise mes minutes par 60 mais je stocke dans ma variable minute que le reste de la division.
showmessage "Cà fait "+str$(heure)+ " Heures "+str$(minute)+ " minutes que tu es planté là !" 'J'utilise le mot clé SHOWMESSAGE pour afficher mon résultat. Comme showmessage à besoin d'une variable de type STRING, je convertis pour l'occasion mes variables numériques heure et minute en utilisant la fonction STR$().
Form2.caption = "Depuis combien de temps je bosse ?" 'Dès que l'utilisateur du programme a cliqué sur le bouton OK de la fenêtre d'infos de SHOWMESSAGE, j'en profite pour remettre le titre original de la fenêtre.
form2.top = form2.top + 50 'Là, je remets ma fenêtre où elle était au départ.

end sub 'Fin de la procédure

form2.showmodal 'C'est le lancement de ma feuille au démarrage du programme car j'ai aucune autres procèdures ou fonctions qui sont lancées avant. Si je n'avais pas envie de mettre de feuille, j'aurais supprimé FORM2 et LABEL1 (et toutes les lignes qui leur font références) et mis ici FORM_CLICK