AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

DateTime - 10 Sekunden

Ein Thema von se0man · begonnen am 29. Mai 2004 · letzter Beitrag vom 30. Mai 2004
Antwort Antwort
se0man

Registriert seit: 8. Mär 2004
51 Beiträge
 
#1

DateTime - 10 Sekunden

  Alt 29. Mai 2004, 17:51
Hallo,
nachdem ich mich jetzt lange genug herumgeärgert habe,
stelle ich meine Frage nun doch als neuen Thread ein:

Und zwar möchte ich,
das wenn der User z.B. 29.05.2004 15:00:00 angibt,
das mein THEN-Ereignis des IF-Clause am
30.05.2004 um 14:59:50 ausgeführt wird.
Ich will also von meinem/r TDATETIME
10 Sekunden abziehen.

WIE??

thx, se0man
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#2

Re: DateTime - 10 Sekunden

  Alt 29. Mai 2004, 17:56
Du zählst den entsprechenden Wert für eine Sekunde Mal 10 ab. Eine Sekunde ist einfach 1/86400. Begründung: Ein Tag entspricht 1 als DateTime. Eine Minute hat 60 Sekunden, eine Stunde 60 Minuten und Tag 24 Stunden. Das gibt 60*60*24, also 86400. Das sind die Sekunden in einem Tag, also dürfte der Rest wohl von alleine kommen...

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
se0man

Registriert seit: 8. Mär 2004
51 Beiträge
 
#3

Re: DateTime - 10 Sekunden

  Alt 29. Mai 2004, 18:06
thxxx

Mein einziges Problem war nur,
dass ich 1.1574074074074074074074074074074e-5
statt 1/86400 benutzte.
Kam mir sehr komisch vor.
Habe mal wieder zu wenig gedacht. Sorry.

Naja, also der Code:

Code:
if (StrToDateTime(edtDate.Text+' '+edtTime.Text)+(1/86400) = Now)
 then begin
  { Ereignis }
 end;
Ciao,
-se0man
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#4

Re: DateTime - 10 Sekunden

  Alt 29. Mai 2004, 18:11
Also, verwende beim Vergleich mit Now nach Möglichkeit nicht =, da die Genauigkeit des DateTime-Wertes jene eines Timers überschreitet. Verwende stattdessen >=:
Delphi-Quellcode:
if (StrToDateTime(edtDate.Text+' '+edtTime.Text)-(1/8640) >= Now) then
begin
  //Dein Code
end;
Sobald der Zeitpunkt überschritten ist, wird der Code durchgeführt. Du hast außerdem den falschen Wert addiert, du willst ja die 10 Sekunden abzählen...
Achja, ein kleiner Tipp: Sieh dir Mal DateTimePicker an (Paletter Win32).

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
se0man

Registriert seit: 8. Mär 2004
51 Beiträge
 
#5

Re: DateTime - 10 Sekunden

  Alt 29. Mai 2004, 18:23
DateTimePicker verwende ich bereits. THX
Das war nämlich kein Copy&Paste Code,
was auch den 10 -> 1 sowie den = -> <=
Fehler erklärt.

Ansonsten nochmal thxx
-se0man
  Mit Zitat antworten Zitat
Benutzerbild von The-X
The-X

Registriert seit: 31. Aug 2003
Ort: Woffelsbach / user.exe ;)
377 Beiträge
 
Delphi 7 Personal
 
#6

Re: DateTime - 10 Sekunden

  Alt 30. Mai 2004, 14:26
Oder man verwendet die funktion IncSecond der Unit SysUtils :

Delphi-Quellcode:
if (IncSecond(StrToDateTime(edtDate.Text+' '+edtTime.Text),-10) >= Now) then
begin
  //Dein Code
end;
[edit: Text vergessen ]
WGET ftp://root@fbi.us.gov/secret/worldreign.exe <- damit werde ich die Weltherrschaft an mich reissen!
=> irc://irc.quakenet.eu.org:6667/delphi.de da werden Sie auch (manchmal) geholfen
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:22 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz