AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

2 TDate -> 1 Tdate

Ein Thema von Antigo · begonnen am 2. Feb 2007 · letzter Beitrag vom 2. Feb 2007
Antwort Antwort
Antigo

Registriert seit: 14. Mär 2005
274 Beiträge
 
#1

2 TDate -> 1 Tdate

  Alt 2. Feb 2007, 18:53
Servus,
Ich habe 2 TDateTimePicker auf meiner Form. In dem einen kann der User ein Datum, in dem anderen eine Uhrzeit einstellen. Jetzt möchte ich aus diesen beiden Angaben ein Datum errechnen, das das Datum des ersten Pickers und die Uhrzeit des zweiten hat. Nur wie komme ich dadran?
Ich weiss, oder meine zumindest mal gelesen zu haben, dass der Vorkomma Teil eines TDates das Datum repräsentiert, und der Nachkomma Teil die Uhrzeit.
Ich komme aber trotzdem nicht drauf wie ich das bewerkstelligen sollte...

Mir kam jetzt doch eine Idee, aber gibts da nicht vielleicht eine sauberere Lösung? Ich find das ziemlich dämlich:
Delphi-Quellcode:
var temp:TDate;
begin
  temp:=trunc(DateTimePicker1.DateTime)+(DateTimePicker2.date-trunc(DateTimePicker2.DateTime));

  edit1.text:=DateTimeToStr(temp)
end;
Funktioniert zwar, aber wie gesagt, etwas rumgetrickst...
Michael
"How should I know if it works? That's what beta testers are for. I only coded it."
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: 2 TDate -> 1 Tdate

  Alt 2. Feb 2007, 18:58
das einfachste ist einfach Datum + Zeit (weil Datum ja der Vorkommateil ist und Zeit der Nachkommateil).
Um zu verhindern das da jeweils noch ein falsches Datum oder eine falsche Zeit addiert werden kann man die Funktionen Trunc und Frac nutzen
DatumZeit := Trunc(Datum) + Frac(Zeit);
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Antigo

Registriert seit: 14. Mär 2005
274 Beiträge
 
#3

Re: 2 TDate -> 1 Tdate

  Alt 2. Feb 2007, 19:11
ok ost etwas schlanker, auch wenns das selbe tut, danke
Michael
"How should I know if it works? That's what beta testers are for. I only coded it."
  Mit Zitat antworten Zitat
Benutzerbild von Lannes
Lannes

Registriert seit: 30. Jan 2005
Ort: Münster
745 Beiträge
 
Delphi 3 Professional
 
#4

Re: 2 TDate -> 1 Tdate

  Alt 2. Feb 2007, 19:55
Hallo,

im OI DateTimePicker1.Time auf '00:00:00' und DateTimePicker2.Date auf '30.12.1899' setzen,
dann ist die direkte Berechnung möglich:
showmessage(DateTimeToStr(DateTimePicker1.Date + DateTimePicker2.Time));
MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 20:45 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