unit Unit1;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DBXDataSnap, IPPeerClient,
Data.DBXCommon, Vcl.Grids, Vcl.DBGrids, Datasnap.DBClient, Datasnap.DSConnect,
Data.DB, Data.SqlExpr, Vcl.StdCtrls ,midaslib
;
type
TForm4 = class(TForm)
ClientDataSet1: TClientDataSet;
DataSource1: TDataSource;
SQLConnection1: TSQLConnection;
DSProviderConnection1: TDSProviderConnection;
DBGrid1: TDBGrid;
Edit1: TEdit;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form4: TForm4;
implementation
{$R *.dfm}
function MSecToTime2(mSec: Int64): string;
var
dt : TDateTime;
begin
dt
:=
mSec / MSecsPerSec / SecsPerDay;
Result
:=
Format('%d days, %s', [Trunc(dt),
FormatDateTime('hh:nn:ss.z', Frac(dt))]) ;
end;
function MSecToTime(mSec: Integer): string;
const
secondTicks = 1000;
minuteTicks = 1000 * 60;
hourTicks = 1000 * 60 * 60;
dayTicks = 1000 * 60 * 60 * 24;
var
D, H, M, S: string;
ZD, ZH, ZM, ZS: Integer;
begin
ZD := mSec div dayTicks;
Dec(mSec, ZD * dayTicks) ;
ZH := mSec div hourTicks;
Dec(mSec, ZH * hourTicks) ;
ZM := mSec div hourTicks;
Dec(mSec, ZM * minuteTicks) ;
ZS := mSec div secondTicks;
D := IntToStr(ZD) ;
H := IntToStr(ZH) ;
M := IntToStr(ZM) ;
S := IntToStr(ZS) ;
Result := D + '.' + H + ':' + M + ':' + S;
end;
procedure TForm4.Button1Click(Sender: TObject);
var
start, stop, elapsed : cardinal;
begin
start := GetTickCount; //TimeOutThis();
ClientDataSet1.Close;
ClientDataSet1.CommandText := Edit1.Text;
ClientDataSet1.Open;
stop := GetTickCount;
elapsed := stop - start; //milliseconds
ShowMessage(MSecToTime(elapsed));
ShowMessage(MSecToTime2(elapsed));
end;
end.
ไม่มีความคิดเห็น:
แสดงความคิดเห็น