![]() |
DXDraw auslesen
Hi,
ich bin noch ein ziemlicher anfänger und habe ein problem, bei dem ich nicht weiterkomme: für ein projekt muss ich die zeit vom erscheinen eines bildes bis zum tastendruck möglichst genau messen. ein bild erscheint wiederum durch einen tastendruck. im groben also so:
Delphi-Quellcode:
Gibt es eine Variable, die genau das Ende des "Malens" anzeigt, die ich als startpunkt für die messung nehmen kann, etwas in der art:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin if not DXDraw1.CanDraw then Exit; DXInput1.Update; if Form1.DXInput1.Keyboard.Keys[Key_B] = true then begin Form1.DXDraw1.Restore; DXImageList1.Items[1].draw(DXDraw1.Surface, 0, 0, 0); DXDraw1.Flip; end; if Form1.DXInput1.Keyboard.Keys[Key_N] = true then begin Form1.DXDraw1.Restore; DXImageList1.Items[0].draw(DXDraw1.Surface, 0, 0, 0); DXDraw1.Flip; end; end;
Delphi-Quellcode:
Wenn mir jemand helfen kann, wäre das super (vielleicht auch mit einer guten (möglichst exakten) zeitmess-unit oder etw. ähnlichem)?
if Form1.DXDraw1.xxx= true then
begin hrt_timer_reset(ExacTicks); hrt_timer_start(ExacTicks); ... end; |
Re: DXDraw auslesen
nimm die zeit vor dem malen
und danach nimmst du die zeit nach dem malen und der rest ist einfachste mathematik |
Re: DXDraw auslesen
meine frage war, wie ich die zeit vor und nach dem malen nehmen kann...
|
Re: DXDraw auslesen
Delphi-Quellcode:
müsste gehen wobei ich mit timetostr nicht so sicher bin
var time1,time2 : tdatetime;
begin time1 := NOW(); Form1.DXDraw1.Restore; DXImageList1.Items[1].draw(DXDraw1.Surface, 0, 0, 0); DXDraw1.Flip; time2 := NOW(); showmessage(TimeToStr(time2-time1)); end; edit hier um ms und sec anzuzeigen
Delphi-Quellcode:
showmessage(formatdatetime('ss:zzz',time2-time1));
|
Re: DXDraw auslesen
funzt leider nicht,
wahrscheinlich weil solche operatoren mit zeiten nicht möglich sind:
Delphi-Quellcode:
oder weil es einfach zu schnell geht.
showmessage(TimeToStr(time2-time1));
aber ich habe auch die verschiedenen zeitzuweisungen weiter auseinander gelegt (jeweils auf einen tastendruck und dann ein paar sek gewartet) und dennoch gehts nicht. |
Re: DXDraw auslesen
Hi kannst es auch mit
![]() ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:11 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz