AGB  ·  Datenschutz  ·  Impressum  







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

Time Vergleich Problem

Ein Thema von aaaaaaaaaa_10 · begonnen am 6. Aug 2009 · letzter Beitrag vom 7. Aug 2009
Thema geschlossen
Seite 1 von 2  1 2      
aaaaaaaaaa_10
(Gast)

n/a Beiträge
 
#1

Time Vergleich Problem

  Alt 6. Aug 2009, 13:14
Delphi-Quellcode:
 if (StrToTime(WL.Strings[1]) - StrToTime(Time)) = StrToTime('00:00:05') then
                  ShowMessage('gleich') else ShowMessage('verschieden');
Ich habe mir mal StrToTime(WL.Strings[1]) - StrToTime(Time)) ausgeben lassen und da kam auch 00:00:05 raus, warum aber bekomme ich immer die Message 'verschieden'?
 
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Time Vergleich Problem

  Alt 6. Aug 2009, 13:19
Benutze beim Vergleich von Gleitkommazahlen "samevalue"!
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
 
Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Time Vergleich Problem

  Alt 6. Aug 2009, 13:20
Zitat von aaaaaaaaaa_10:
StrToTime(Time)
Was ist denn in deinem Fall "Time"? Es gibt eine Funktion aus der Unit "SysUtils" mit dem Namen Time, welche die aktuelle Zeit liefert (TDateTime). Die kannst du doch nicht mit StrToTime in eine "Zeit" umwandeln, ist doch schon eine
Oder hast du noch eine eigene Variable namens "Time"?

Patti

Edit: Time aus Sysutils ist keine Variable, sondern eine Funktion
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
 
aaaaaaaaaa_10
(Gast)

n/a Beiträge
 
#4

Re: Time Vergleich Problem

  Alt 6. Aug 2009, 13:24
Time ist eine eigene Stringvar
 
Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Time Vergleich Problem

  Alt 6. Aug 2009, 13:26
OK, dann gibt das zumindest Sinn. Ich würde trotzdem auf den Namen verzichten und einen eigenen, noch nicht vorhandenen wählen, damit es zu keinerlei Problemen kommen kann. Ist letztendlich deine Entscheidung, aber im Sinne eines guten, lesbaren Quellcodes wäre es sicherlich von Vorteil

Patti
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
 
aaaaaaaaaa_10
(Gast)

n/a Beiträge
 
#6

Re: Time Vergleich Problem

  Alt 6. Aug 2009, 13:28
ok,aber ändert nix an meinem problem
 
Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Time Vergleich Problem

  Alt 6. Aug 2009, 13:34
Zu deinem Problem hat dir sirius ja schon die Lösung geschrieben:

Zitat von sirius:
Benutze beim Vergleich von Gleitkommazahlen "samevalue"!
Zu den Gründen dafür lässt sich einiges in der DP finden.

Patti
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
 
aaaaaaaaaa_10
(Gast)

n/a Beiträge
 
#8

Re: Time Vergleich Problem

  Alt 6. Aug 2009, 13:55
if SameValue(StrToTime(WL.Strings[1])-StrToTime(MyTime),StrToTime('00:00:05')) = true then Da kommt aber auch 'verschieden' raus. Ich versteh es nicht

EDIT : Habs jetzt damit:
if SameTime(StrToTime(WL.Strings[1])-StrToTime(MyTime),StrToTime('00:02:00')) = true then hinbekommen. Aber danke für den Hinweis, sonst wäre ich wohl nicht auf SameTime gestoßen
 
Benutzerbild von hitzi
hitzi

Registriert seit: 2. Jan 2003
Ort: Eibau
768 Beiträge
 
Delphi 2010 Professional
 
#9

Re: Time Vergleich Problem

  Alt 6. Aug 2009, 15:02
Kleine Anmerkung: Was passiert aber wenn aus was für einen Grund auch immer das System kurz ausgelastet war und somit die Windowsnachrichten nicht abgearbeitet wurden. Da stockt der Timer für die Zeit und dann sind im schlimmsten Fall mehr als 5 Sekunden vergangen. Deshalb nutze ich bei Zeitvergleichen mit relativ kurzen Abständen immer ein ">=". Also im Pseudocode "warte bis die Zeitdifferenz 5 Sekunden oder mehr beträgt".
Thomas
Besucht doch mal http://www.hitziger.net
 
aaaaaaaaaa_10
(Gast)

n/a Beiträge
 
#10

Re: Time Vergleich Problem

  Alt 7. Aug 2009, 07:14
Ich probiere es gleich mal aus mit >=. Mal schauen, wie das so läuft. Meld mich denn

EDIT: An sich schreibt er jetzt wenigstens etwa alle z.B. 2 Minuten einen Wert in die Datenbank,aber die sind ja nun nicht genau 2 Minuten auseinander. Bsp :
07:21:35
07:23:40
07:25:40
07:27:45
usw.

Ist natürlich nicht so gut. Und nun?
 
Thema geschlossen
Seite 1 von 2  1 2      


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 05:49 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