Autor |
Beitrag |
arnydaniel
      
Beiträge: 80
hoffentlich bald Linux
Delphi 6
|
Verfasst: Fr 07.10.05 14:21
Hi,
wie kann ich die Sekunden der aktuellen Uhrzeit auslesen?
Also wenns 18:34:35Uhr ist, will ich 35 haben..
Gruß
_________________ Wenn jeder nur an sich denkt, wird an jeden gedacht.
|
|
jaenicke
      
Beiträge: 19312
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Fr 07.10.05 14:29
Delphi-Quelltext 1:
| ShowMessage(IntToStr(Round(time * 86400) div 1440)); |
now ist die aktuelle Uhrzeit, wobei 1 einem Tag entspricht. Also div 24 -> Dann haste nur noch Stunden und Minuten und nochmal durch 60 sind die Sekunden...
Die aber in Bruchteilen eines Tages, also vorher *24*3600.
//EDIT: Fehler korrigiert
Zuletzt bearbeitet von jaenicke am Fr 07.10.05 14:54, insgesamt 4-mal bearbeitet
|
|
arnydaniel 
      
Beiträge: 80
hoffentlich bald Linux
Delphi 6
|
Verfasst: Fr 07.10.05 14:39
Also das klappt leider net so ganz, da kommen werte wie 2315795 raus!
_________________ Wenn jeder nur an sich denkt, wird an jeden gedacht.
|
|
jaenicke
      
Beiträge: 19312
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Fr 07.10.05 14:40
Hast du es mit der neuesten Version probiert, ich hab nen Fehler gefunden und korrigiert!
Also so gehts auf jeden Fall:
Delphi-Quelltext 1: 2: 3: 4: 5: 6:
| function GetSecond(uTime: TDateTime): Word; var tmp: Word; begin DecodeTime(uTime, tmp, tmp, Result, tmp); end; |
DecodeTime gibt die einzelnen Bestandteile einer Zeitangabe zurück!
Zuletzt bearbeitet von jaenicke am Fr 07.10.05 14:46, insgesamt 1-mal bearbeitet
|
|
arnydaniel 
      
Beiträge: 80
hoffentlich bald Linux
Delphi 6
|
Verfasst: Fr 07.10.05 14:44
ja, aber da kommen immer noch so utopisch hohe zahlen raus.
_________________ Wenn jeder nur an sich denkt, wird an jeden gedacht.
|
|
TM
      
Beiträge: 74
Win xp
D7 ET
|
Verfasst: Fr 07.10.05 14:45
Hi,
Delphi-Quelltext 1:
| label1.caption:=copy(timetostr(now),7,2); |
..
_________________ Dieser Beitrag enthält keine Schreibfehler.
Das sind versteckte Hinweise.
|
|
jaenicke
      
Beiträge: 19312
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Fr 07.10.05 14:46
|
|
arnydaniel 
      
Beiträge: 80
hoffentlich bald Linux
Delphi 6
|
Verfasst: Fr 07.10.05 14:47
@TM: einfach aber sehr sinnvoll! Danke
_________________ Wenn jeder nur an sich denkt, wird an jeden gedacht.
|
|
Tobias1
      
Beiträge: 454
Win 98, XP Prof
D3 Prof, D2005 Prof
|
Verfasst: Fr 07.10.05 14:48
@jaenicke now*86400 gibt die Sekunden seit 1900 zurück
_________________ Auch das schlechteste Buch hat seine gute Seite: die letzte. (John Osborne)
|
|
jaenicke
      
Beiträge: 19312
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Fr 07.10.05 14:50
Ja, funktioniert aber leider nicht, wenn man die Uhrzeit zum Beispiel ohne führende Null anzeigen lässt!
(Systemsteuerung -> Regions- und Sprachoptionen -> Neben der Sprache Anpassen -> Uhrzeit -> Zeitformat auf H:m:s)
|
|
yukon-troll
      
Beiträge: 60
|
Verfasst: Fr 07.10.05 14:52
Unabhängig von den Systemeinstellungen:
Delphi-Quelltext 1:
| (string) := FormatDateTime('ss', Now); |
MfG Yukon-Troll
|
|
jaenicke
      
Beiträge: 19312
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Fr 07.10.05 14:54
Tobias1 hat folgendes geschrieben: | @jaenicke now*86400 gibt die Sekunden seit 1900 zurück |
Stimmt, so'n Sch***, aber jetzt hab ich time statt now benutzt.
|
|
MrFox
      
Beiträge: 208
WIN 2000 Professional, Ubuntu 5.10
D3 Prof, D7 Pers, D2005 Pers, Java (Eclipse)
|
Verfasst: Fr 07.10.05 16:44
Für mich ist
Delphi-Quelltext
immernoch die sauberste Variante
_________________ Das Leben auf der Erde mag zwar teuer sein, aber eine jährliche Rundreise um die Sonne ist gratis mit dabei.
|
|
jaenicke
      
Beiträge: 19312
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Di 11.10.05 12:08
MrFox hat folgendes geschrieben: | Für mich ist
Delphi-Quelltext
immernoch die sauberste Variante |
Ja witzig! Hast du auch mal nachgesehen wo diese Funktion sitzt?
In den Datums- und Zeitroutinen der JCL, aber wer die nicht installiert hat, kann damit nix anfangen...
Ich wollte eher eine von der JCL unabhängige Lösung angeben, vor allem, weil die JCL-Units das Projekt unnötig aufblähen, wenn man sonst nix von der JCL benutzt...
|
|
MrFox
      
Beiträge: 208
WIN 2000 Professional, Ubuntu 5.10
D3 Prof, D7 Pers, D2005 Pers, Java (Eclipse)
|
Verfasst: Di 11.10.05 13:15
jaenicke hat folgendes geschrieben: |
Ja witzig! Hast du auch mal nachgesehen wo diese Funktion sitzt?
In den Datums- und Zeitroutinen der JCL, aber wer die nicht installiert hat, kann damit nix anfangen...
Ich wollte eher eine von der JCL unabhängige Lösung angeben, vor allem, weil die JCL-Units das Projekt unnötig aufblähen, wenn man sonst nix von der JCL benutzt... |
DIe Funktion SecondOf ist (auch wenn sie bei oberflächlicher Suche nicht in der Hilfe gefunden werden kann  ) in der VCL-Unit DateUtils enthalten.
Wünschte man würde erst richtig gucken bevor man jemanden anpflaumt. 
_________________ Das Leben auf der Erde mag zwar teuer sein, aber eine jährliche Rundreise um die Sonne ist gratis mit dabei.
|
|
Alstar
      
Beiträge: 827
|
Verfasst: Di 11.10.05 13:18
MrFox hat folgendes geschrieben: | [...](auch wenn sie bei oberflächlicher Suche nicht in der Hilfe gefunden werden kann )[...] |
Ich muss zu deiner Unterstützung sagen: Ich hab sie sogar auf Anhieb (allerdings mit der Suchfunktion der Hilfe) sofort gefunden
Alstar
Moderiert von raziel: Quote-Tag korrigiert.
|
|
jaenicke
      
Beiträge: 19312
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Di 11.10.05 13:22
Wirklich?
Sorry, aber da diese Funktion extra in der JCL vorhanden ist und in der Delphi-Hilfe im Index nur für die JCL steht, wäre ich nie darauf gekommen, dass es die doch auch direkt in Delphi gibt.
Ich weiß zwar dass manches in der Hilfe fehlt, aber solch eine triviale Funktion und undokumentiert (oder jedenfalls nicht im Index), naja...
Abgesehen davon war das nicht als anpflaumen gemeint, Sorry.
Wo soll ich eigentlich gucken, wenn die Funktion im Index nicht vorhanden ist? Steht die wenigstens in der Liste für die DateTime-Unit?
|
|
jaenicke
      
Beiträge: 19312
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Di 11.10.05 13:23
|
|
Alstar
      
Beiträge: 827
|
Verfasst: Di 11.10.05 13:25
[ot]
Ja dafür is die da, oder?
[/ot]
Alstar
|
|
liquid air
      
Beiträge: 76
|
Verfasst: Di 13.12.05 01:27
TM hat folgendes geschrieben: |
Delphi-Quelltext 1:
| label1.caption:=copy(timetostr(now),7,2); |
|
hi,
ähm also wie gesagt ich bin in sachen delphi mehr oder weniger noob, deswegen wollt ich mal bitten dass du das kurz erklären könntest...? also ich wollte eben n prog machen zur übung wo ich um ne bestimmte uhrzeit z.b. nen sound abspielen lass, also fang ich zum verständniss erstmal damit an dass ich ne funktionierende uhr in dem prog hab  hab das jetzt mal so gemacht mit dem was du geschrieben hast; da hab ich dann schonmal die sekunden:
Delphi-Quelltext 1: 2: 3: 4:
| procedure TForm1.Timer1Timer(Sender: TObject); begin panel1.caption:=copy(timetostr(now),7,2); end; |
und timer halt auf 1 ms gestellt.
nun weiss ich dass das alles andere als elegant is und wollte dann auch grad mal fragen wie ich das machen kann ohne timer? also irgendwie ne WHILE programmrunning=true oder so das hat net geklappt da isser abgeschmiert oO
also konkret noch mal in klartext:
1) wie lass ich ne uhr anzeigen (also sek. un minuten, sekunden hab ich ja soweit...
2) wie kann ich das sich ständig erneuern lassen? (ohne timer)
danke schonmal für die hilfe, und sry falls ich net von allein drauf komm; hab noch net sooo viel erfahrung ^^'
mfg liquid air
|
|