vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück
Rubrik: Datum/Zeit und Timer · Timer   |   VB-Versionen: VB4, VB5, VB610.03.04
Stopuhr im Mini-Format

Eine Stopuhr mit geringen Systemressourcen

Autor:   Roland WutzkeBewertung:     [ Jetzt bewerten ]Views:  23.183 
www.vb-power.netSystem:  Win9x, Win2k, Win8, Win10, Win11 Beispielprojekt auf CD 

Man braucht sie mal immer wieder - eine Stopuhr. Sei es um den Ladelauf einer Tabelle zu messen, die gerade geschriebene Funktion zu optimieren, den Datendurchsatz im LAN zu prüfen und und und... Es gibt viele Möglichkeiten für den Einsatz einer Stopuhr.

Heute möchten wir Ihnen eine Stopuhr vorstellen, deren Code nicht nur sehr klein ist, sondern auch noch direkt die nötige Formatierung vornimmt.

Fügen Sie den nachfolgenden Code in ein Modul ein:

Public Function StopWatch( _
  Optional RunWatch As Boolean = True, _
  Optional TimeMask As String = "nn:ss") As String
 
  Static Start As Single
 
  Select Case RunWatch
    Case True
      ' Beginn der Zeitmessung
      Start = Timer: StopWatch = "0"
 
    Case Else
      ' Ende der Zeitmessung
      StopWatch = Format$(Int(Timer - Start) * _
        (1 / 86400), TimeMask & ":") & _
        Format$(((Timer - Start) - Int(Timer - Start)) * 1000, "000")
   End Select
End Function

Gestartet wir die Stopuhr ganz einfach mit...

' Zeitmessung starten
Call StopWatch

... und beendet dann so:

' Zeitmessung beenden und Ergebnis 
' in einem Label-Control anzeigen
Label1.Caption = StopWatch(False)

Die dabei gemessene Zeit wird in "Minuten, Sekunden, Millisekunden" zurückgegeben. Über den optionalen Parameter TimeMask kann die Formatierung auch angepasst werden. Die Millisekunden finden dabei keine Berücksichtigung und werden immer zurückgegeben.

Kleines Beispiel:
Ein Recordset soll vollständig ausgelesen und in eine ListBox übertragen werden. Die dafür benötigte Zeit soll in einem Label-Control ausgegeben werden.

' Zeitmessung starten
Call StopWatch
 
' Recordset durchlaufen und Daten in ListBox übertragen
Do Until oRs.Eof
  List1.AddItem oRs.Fields("Name").Value
  oRs.MoveNext
Loop
 
' Benötigte Zeit:
Label1.Caption StopWatch(False)

Dieser Tipp wurde bereits 23.183 mal aufgerufen.

Voriger Tipp   |   Zufälliger Tipp   |   Nächster Tipp

Über diesen Tipp im Forum diskutieren
Haben Sie Fragen oder Anregungen zu diesem Tipp, können Sie gerne mit anderen darüber in unserem Forum diskutieren.

Neue Diskussion eröffnen

nach obenzurück


Anzeige

Kauftipp Unser Dauerbrenner!Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv  Vol.6
(einschl. Beispielprojekt!)

Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
- nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten
- Symbol-Galerie mit mehr als 3.200 Icons im modernen Look
Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m.
 
   

Druckansicht Druckansicht Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel