- Delphiartiklar, tips, forum, länksamling - 

      

START | DELPHI | LÄNKARGÄSTBOK 




 Forum

Grundkurs
  »Introduktion
  »Snabbguide
  »Komponenter
  »Händelser
  »Strängar
  »Räkna med Delphi   »Egna typer
  »Selektion
  »Iteration
  »Menyer
  »Funktioner
  »Arraystrukturer

Tips & Tricks
  »Nya tips
  »Blandat
  »Databaser
  »Filer
  »Forms
  »Grafik
  »Internet
  »Komponenter
  »Matematik
  »Multimedia
  »Objekt/ActiveX
  »Skrivare
  »Strängar
  »System
  »Mest lästa tips

Artiklar
  »Delphi och ADO
  »Bygga en DLL
  »Skapa en enkel rapport
  »Hantera registret
  »Enheter, units
  »Klassen TCanvas
  »Använd LookUp Controls

 Nya tips
 Lägg till tips
 Delphilänkar
 Gästbok

 

Returnera alla tidsdelar med GetTickCount Kategori: Blandat
Inlagt: 2007-11-27
Läst: 1402
Inlagt av: Staffan Berg
Beskrivning
Med hjälp av GetTickCount-funktionen i Windows API kan du returnera tid ända ned till millisekunder. Studera exemplet.
Kod
type  
 TUpTime = record  
  MilliSeconds: Word;  
  Seconds,  
  Minutes,  
  Hours,  
  Days,  
  Months,  
  Years    : Byte;  
 end;  
 
var  
 Ticks: Int64;  
 TempTicks: Cardinal;  
 
function GetTickCountEx: TUpTime;  
var temp: Cardinal;  
begin  
 if Ticks = 0 then  
  Ticks := GetTickCount  
 else  
 begin  
  temp := TempTicks;  
  TempTicks := GetTickCount;  
  if TempTicks < Ticks then  
   Inc(Ticks, TempTicks - temp)  
  else  
   Ticks := TempTicks;  
 end;  
 with Result do  
 begin  
  MilliSeconds := Ticks mod 1000;  
  Seconds := (Ticks div 1000) mod 60;  
  Minutes := (Ticks div 60000) mod 60;  
  Hours := (Ticks div 3600000) mod 24;  
  Days := ((Ticks div 3600000) div 24) mod 30;  
  Months := ((Ticks div 3600000) div 24) div 30;  
  Years := ((Ticks div 3600000) div 24) div 365;  
 end;  
end;

 
 
© Copyright 2005 - Staffan Berg
- Alla rättigheter förbehålles -