Affichage de l'heure en dixième, centième de secondes ?? [Résolu]

cs_Jacky7 63 Messages postés mardi 13 mai 2008Date d'inscription 22 juin 2011 Dernière intervention - 6 janv. 2009 à 12:15 - Dernière réponse : cs_Orohena 578 Messages postés vendredi 26 septembre 2008Date d'inscription 20 novembre 2010 Dernière intervention
- 6 janv. 2009 à 13:56
Bonjour à tous ,

Je voudrais savoir s'il serait possible d'afficher l'heure du système de mon PC en dixième de secondes voire plus a la place de l' affichage classique  hh:mm:ss ??

Merci
Afficher la suite 

3 réponses

Répondre au sujet
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 6 janv. 2009 à 13:27
+3
Utile
salut,

possible oui, par API

te reste à adapter :






Option Explicit


'


Private Type 
SYSTEMTIME

    wYear As Integer
    wMonth As Integer
    wDayOfWeek As Integer
    wDay As Integer
    wHour As Integer
    wMinute As Integer
    wSecond As Integer
    wMilliseconds As Integer
End Type
Private Declare Sub GetSystemTime Lib "kernel32" (lpSystemTime As SYSTEMTIME)
'
Private Sub Form_Load()
    Timer1.Interval = 50
End Sub
'
Private Sub Timer1_Timer()
    Dim SysTime As SYSTEMTIME
    Call GetSystemTime(SysTime)
    With SysTime
        Me.Caption = .wHour & ":" & .wMinute & ":" & .wSecond & " - " & .wMilliseconds
    End With
End Sub





<small>
[../code.aspx?ID=39466 Coloration VB6, VBA,
VBS]
</small>






++


Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp 
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de PCPT
cs_Orohena 578 Messages postés vendredi 26 septembre 2008Date d'inscription 20 novembre 2010 Dernière intervention - 6 janv. 2009 à 13:54
+3
Utile
Bonjour Jacky7

Oui, le système d'exploitation de Windows gère son horloge temps réel avec une précision de l'ordre de la milliseconde.

Voici un exemple d'affichage de l'heure locale dans une zone de texte TextBox1 à la milliseconde près (avec les réserves indiquées plus bas), au moyen de la fonction GetSystemTime.

    Option Explicit
    Private Type SYSTEMTIME
        wYear As Integer
        wMonth As Integer
        wDayOfWeek As Integer
        wDay As Integer
        wHour As Integer
        wMinute As Integer
        wSecond As Integer
        wMilliseconds As Integer
    End Type
    Private Declare Sub GetLocalTime Lib "kernel32" (SYSTEMTIME As SYSTEMTIME)
Sub afficheHeure()
    Dim systime As SYSTEMTIME, Msg As String
    Do                                          ' boucle sans fin d'affichage de l'heure
       DoEvents
       Call GetLocalTime(systime)   ' lecture de l'heure locale du système
       With systime
           Msg = "Heure locale : " & .wDay & "/" & .wMonth & "/" & .wYear & " " _
              & .wHour & ":" & .wMinute & ":" & .wSecond & ":" & .wMilliseconds
       End With
       Me.TextBox1.Value = Msg   ' affichage de l'heure avec une précision de l'ordre de la milliseconde
    Loop
End Sub



Private Sub UserForm_Activate()
   afficheHeure
End Sub



Dans la pratique, je ne pense pas que ce soit très utilisable étant donné que l'indispensable fonction DoEvents "rend la main" au système, et donc affecte plus ou moins le fonctionnement de l'horloge selon les tâches en attente.

Amicalement
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_Orohena
cs_Orohena 578 Messages postés vendredi 26 septembre 2008Date d'inscription 20 novembre 2010 Dernière intervention - 6 janv. 2009 à 13:56
0
Utile
Désolé pour ces messages croisés.
Commenter la réponse de cs_Orohena

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.