Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Datetimepicker mit 24-Stundenanzeige


gogi2207 - Do 24.06.04 15:21
Titel: Datetimepicker mit 24-Stundenanzeige
Hi,
ich habe einen Datetimepicker verwendet und diesen auf das Zeitformat eingestellt. Nun habe ich das Problem, dass dieser nur Zeitwerte bis 12.59 Uhr anzeigt (also amerikanische Anzeige) und nicht bis 23.59 Uhr. Trage ich z.B. 15:00 Uhr ein springt er sofort auf 03:00 Uhr um.Wie kann man dies dort einstellen?

gruß gogi


smiegel - Do 24.06.04 15:33

Hallo,

ich würde einmal unter "Systemsteuerung" - "Ländereinstellungen" - "Uhrzeit" nachschauen, was dort unter "Uhrzeitformat" eingestellt ist. Der Picker übernimmt nämlich diese Einstellungen. Damit die 24-Std.-Anzeige funktioniert, muss "HH:mm:ss" eingestellt sein.


gogi2207 - Do 24.06.04 15:43

Ist bei mir eingestellt, geht trotzdem nicht. Bei Zeitformat steht 'HH:mm:ss'.
Und als dazugehörendes Beispiel steht '15:42:12' darüber.


EUOCheffe - Do 24.06.04 17:40

Es gibt da eine ganze Reihe von Variablen, die das Anzeigen von Zeit und Datum steuern.


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
var CurrencyString: string;
var CurrencyFormat: Byte;
var NegCurrFormat: Byte;
var ThousandSeparator: Char;
var DecimalSeparator: Char;
var CurrencyDecimals: Byte;
var DateSeparator: Char;
var ShortDateFormat: string;
var LongDateFormat: string;
var TimeSeparator: Char;
var TimeAMString: string;
var TimePMString: string;
var ShortTimeFormat: string;
var LongTimeFormat: string;
var ShortMonthNames: array[1..12of string;
var LongMonthNames: array[1..12of string;
var ShortDayNames: array[1..7of string;
var LongDayNames: array[1..7of string;
var SysLocale: TSysLocale;
var EraNames: array[1..7of string;
var EraYearOffsets: array[1..7of Integer;
var TwoDigitYearCenturyWindow: Word = 50;
var ListSeparator: Char;


Wenn man einige Variablen hier ändert, wird z.B. das Datum eines Zeitfeldes in einem DBGrid anders angezeit. Würde mich wundern, wenn es bei irgend einer anderen Komponente anders wäre.

Die Anfangswerte für diese Variablen werden wohl beim Programmstart anhand der Systemeinstellungen gesetzt, können nachher aber problemlos nach belieben geändert werden.


raziel - Do 24.06.04 18:10

Hab mir den DateTimePicker mal kurz angeschaut. Da gibts eine Eigenschaft namens Format. Die Formatierungsmöglichkeiten kannst Du der Delphi-Hilfe entnehmen, das hier zu zitieren wäre imho zu lang. Such nach TDateTimePicker,Format.

@EUOCheffe:
Deine Variablen sind afaik in TFormatSettings zusammengefasst.

raziel


EUOCheffe - Fr 25.06.04 00:34

Krasse Zusammenfassung :)


gogi2207 - Fr 25.06.04 09:01

Ok, ich habs!
Statt 'hh:mm:ss' muss man beim Format 'HH:mm:ss' schreiben!