Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - DateTimePicker auf englisches Format umstellen?
lexmy3 - Do 15.12.05 13:37
Titel: DateTimePicker auf englisches Format umstellen?
Hallo,
Ich habe ein Prog. das in englischer Sprache ausgegeben sein sollte, hier benutze ich einen Date Time Picker. Aber leider ist er in Deutsch.
Ich hätte aber gern die Ausgabe ungefähr so: 'On Monday 05th September 2005'
Er gibt mir aber so raus: ' On 5.09.05'
Habe diesen Befehl benutzt:
('On'+' '+ DateToStr(DateTimePicker1.Date)
mfg
Lexmy3
Moderiert von
raziel: Überflüsse Fragezeichen aus dem Titel entfernt.
Tastaro - Do 15.12.05 18:44
DateToStr nimmt deine Windows-Systemeinstellungen, wenn du keine Formatangaben übergibst. Schau mal in der Delphi-Hilfe unter DateToStr nach.
Beste Grüße
Tastaro
Delete - Do 15.12.05 21:47
Der DatetimePicker zeigt das Datum im Shortdateformat des Systems an. Du musst dich also um nichts kümmern.
lexmy3 - Do 22.12.05 10:04
Titel: DateTimer icker im english!!!
Luckie hat folgendes geschrieben: |
Der DatetimePicker zeigt das Datum im Shortdateformat des Systems an. Du musst dich also um nichts kümmern. |
Hallo wie meinst du das "um nichts kümern"??
Jeder Anwender in D hat Windows auf deutsch und möchte nur das Datum auf english erscheinen lassen. Also möchte ich nicht das System umstellen.
mfg
Lexmy3
Martin1966 - Do 22.12.05 10:12
Hallo :wink2:
Es hat ja auch keiner davon geredet, dass du das "System" umstellen sollst. Luckie hat geschrieben, dass der DateTimePicker das Datum immer so anzeigt wie man es in Windows in den Systemeinstellungen festgelegt hat.
Du brauchst also nichts machen da die Komponente so schlau ist und das Anzeigeformat für das Datum aus den Systemeinstellungen verwendet. ;-)
lg Martin
Patriol - Do 22.12.05 10:22
Hallo,
verwende doch statt "DateToStr()" die Methode "FormatDateTime()". Hier könntest du zumindestens ein englischen Datumsformat in der Form "2005-12-22" oder dergleichen hinbekommen ohne die entsprechenden Systemeinstellungen vorzunehmen. Ich bezweifle nur das du dann damit "Monday" hinbekommst, wenn in deinen Systemeinstellungen Deutsch eingestellt ist...
MfG
Patriol
lexmy3 - Do 22.12.05 12:12
Patriol hat folgendes geschrieben: |
Hallo,
verwende doch statt "DateToStr()" die Methode "FormatDateTime()". Hier könntest du zumindestens ein englischen Datumsformat in der Form "2005-12-22" oder dergleichen hinbekommen ohne die entsprechenden Systemeinstellungen vorzunehmen. Ich bezweifle nur das du dann damit "Monday" hinbekommst, wenn in deinen Systemeinstellungen Deutsch eingestellt ist...
MfG
Patriol |
Habe jetzt es mit FormatDateTime probiert aber nix funktionierendes hinbekommen.
Ob es wohl mit StrToDate,Day of Week möglich ist???
lexmy3 - Do 22.12.05 12:21
Martin1966 hat folgendes geschrieben: |
Hallo :wink2:
Es hat ja auch keiner davon geredet, dass du das "System" umstellen sollst. Luckie hat geschrieben, dass der DateTimePicker das Datum immer so anzeigt wie man es in Windows in den Systemeinstellungen festgelegt hat.
Du brauchst also nichts machen da die Komponente so schlau ist und das Anzeigeformat für das Datum aus den Systemeinstellungen verwendet. ;-)
lg Martin |
Das ist ja auch mein Problem, wenn du die Problemstellung genau durchliest dann siehst du es !!!
Ich möchte haben: Bei Auswahl im DateTimePicker und in späteren Übernahme dieser in meinem Bericht Ein Satz erscheint: On 'Wochentag' 'Datum'th 'Monat' 'Jahr' a visual survey took place.
Es ist ein Bericht in english!!!
mfg
Lexmy3
Manfred - Fr 30.12.05 00:21
Hi!
FormatDateTime nutzt ebenfalls die System-Einstellungen und ermittelt daher natürlich deutschsprachige Werte.
Warum nutzt Du nicht eine Konstante, etwa in der Art:
Quelltext
1: 2:
| const month = ',January,February,March,April,May,June,July,August,September,October,November,December'; |
Um die Bezeichnung des Monats zu ermitteln, musst Du nur noch die begrenzenden Kommas finden.
Für den April musst Du also das 4. (April ist der 4. Monat :lol:) und das vorherige Komma finden, dann weißt Du, zwischen welchen Zeichen Dein Monat steht. Das ist übrigens der Grund, warum vor dem Januar ebenfalls ein Komma steht.
Oder Du nutzt ein Array, in dem die Namen bereits enthalten sind.
Lannes - Fr 30.12.05 02:14
Hallo,
Du könntest es auch mit FormatDateTime realisieren:
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: 24: 25: 26: 27: 28:
| procedure TForm1.DateTimePicker1Change(Sender: TObject); const Monate : Array [1..12] of String = ('January','February','March','April','May', 'June','July','August','September','October', 'November','December'); Tage : Array [1..7] of String = ('Sunday','Monday','Tuesday','Wednesday', 'Thursday','Friday','Saturday'); var oldLongMonthNames : array[1..12] of string; oldLongDayNames : array[1..7] of string; z : Integer; begin for z := 1 to 12 do oldLongMonthNames[z] := LongMonthNames[z]; for z := 1 to 7 do oldLongDayNames[z] := LongDayNames[z]; for z := 1 to 12 do LongMonthNames[z] := Monate[z]; for z := 1 to 7 do LongDayNames[z] := Tage[z]; showmessage('On '+FormatdateTime('dddd dd',DateTimePicker1.Date)+'th ' +FormatdateTime('mmmm yyyy',DateTimePicker1.Date)); for z := 1 to 12 do LongMonthNames[z] := oldLongMonthNames[z]; for z := 1 to 7 do LongDayNames[z] := oldLongDayNames[z]; end; |
lexmy3 - Di 10.01.06 10:50
Hey Supper hat alles geklappt!!!
Vielen Dank Lannes
mfg
aus Frankfurt
Horst_H - Di 10.01.06 11:28
Hallo,
Man kann die Formatssettings auch direkt abfragen und innerhalb von Format nutzen.
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: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77:
| formatSettings : TFormatSettings;
j := 1033;GetLocaleFormatSettings(j,formatSettings); with formatsettings do for i := 1 to 12 do memo1.lines.add(INtToStr(j)+' '+ShortMonthNames[i]); |
Gruss Horst
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!