PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV 2024 → Créer un horloge analogique
Créer un horloge analogique
Iniciado por webdan, set., 25 2005 6:24 PM - 2 respostas
Publicado em setembro, 25 2005 - 6:24 PM
Bonjour, je voudrais savoir comment fait on pour afficher une horloge analogique type longhorn dans une fenêtre windev. Existe til des solutions dejà faites permettant d'intégrer dans une fenêtre windev ce type d'horloge ou dois-je le programmer moi-même ?

Merci
Publicado em setembro, 26 2005 - 6:29 AM
Salut,

Voici un bout de code dans un timer qui crée une horlage simple à aiguille :
Integrer un champ image sans cadre de 120 x 120 nommé imgHorloge
Ne pas oublier de lancer TimerSys("t_Horloge", 100, 1)

A ++
Laurent

======================================================

PROCEDURE t_Horloge()

x, y, eAngH est un entier
hH est une Heure = HeureSys()

dDébutDessin(imgHorloge, dEffacer)

dCercle(0, 5, 120, 115, RVB(195, 214, 255), RVB(1, 52, 205))

// Corrige les défauts du cercle
dPoint(17, 21, RGB(195, 214, 255))
dPoint(102, 21, RGB(195, 214, 255))
dPoint(17, 98, RGB(195, 214, 255))
dPoint(102, 98, RGB(195, 214, 255))

//Dessin des barres
TANTQUE eAngH <= 330
x = 60 + (Cosinus(eAngH) * 51)
y = 60 + (Sinus(eAngH) * 51)
dLigne(x, y, 60, 60, RVB(121, 158, 218), 1)
eAngH += 30
FIN
dRectangle(59, 8, 62, 23, RVB(121, 158, 218))
dRectangle(59, 98, 62, 112, RVB(121, 158, 218))
dRectangle(5, 59, 23, 62, RVB(121, 158, 218))
dRectangle(98, 59, 115, 62, RVB(121, 158, 218))
dCercle(17, 17, 104, 104, RVB(195, 214, 255))

//Dessin du nom
dPolice("Arial", 10, iGras )
dTexte(30, 72, "Mon_Texte", RVB(239, 243, 254))

eH est un entier = hH..Heure
SI eH > 12 ALORS
eH -= 12
FIN

//Petite aiguille
eAngH = (((eH * 60) + (hH..Minute)) / 2) - 90
x = 60 + (Cosinus(eAngH) * 31)
y = 60 + (Sinus(eAngH) * 31)
dLigne(x, y, 60, 60, RVB(160, 160, 160), 5)
x = 60 + (Cosinus(eAngH) * 31)
x = 60 + (Cosinus(eAngH) * 31)
dLigne(x, y, 60, 60, iGrisClair, 3)
//Grande aiguille
eAngH = (((hH..Minute * 60) + (hH..Seconde)) / 10) - 90
x = 60 + (Cosinus(eAngH) * 43)
y = 60 + (Sinus(eAngH) * 43)
dLigne(x, y, 60, 60, RVB(180, 180, 180), 3)
x = 60 + (Cosinus(eAngH) * 43)
y = 60 + (Sinus(eAngH) * 43)
dLigne(x, y, 60, 60, RVB(210, 210, 210), 1)
//Troteuse
eAngH = (hH..Seconde * 6) - 90
x = 60 + (Cosinus(eAngH) * 48)
y = 60 + (Sinus(eAngH) * 48)
dLigne(x, y, 60, 60, iJauneClair, 1)

dCercle(52, 52, 69, 69, RVB(121, 158, 218), RVB(1, 52, 205))


imgHorloge..Bulle = Gauche(HeureVersChaîne(Maintenant()), 8)
Publicado em setembro, 26 2005 - 8:29 PM
webdan a exprimé avec précision :
Bonjour, je voudrais savoir comment fait on pour afficher une horloge
analogique type longhorn dans une fenêtre windev. Existe til des solutions
dejà faites permettant d'intégrer dans une fenêtre windev ce type d'horloge
ou dois-je le programmer moi-même ?

Merci


bonsoir

merci pour le code.
fonctionne impec

cdt

titou44 chez freesurf.fr

--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com