Affichage de l'heure en dixième, centième de secondes ??

Résolu
cs_Jacky7 Messages postés 63 Date d'inscription mardi 13 mai 2008 Statut Membre Dernière intervention 22 juin 2011 - 6 janv. 2009 à 12:15
cs_Orohena Messages postés 577 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 20 novembre 2010 - 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
A voir également:

3 réponses

PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
6 janv. 2009 à 13:27
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 
3
cs_Orohena Messages postés 577 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 20 novembre 2010 4
6 janv. 2009 à 13:54
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
3
cs_Orohena Messages postés 577 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 20 novembre 2010 4
6 janv. 2009 à 13:56
Désolé pour ces messages croisés.
0
Rejoignez-nous