AGB  ·  Datenschutz  ·  Impressum  







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

FormatDateTime - Englisch

Ein Thema von Yheeky · begonnen am 11. Jan 2003 · letzter Beitrag vom 12. Jan 2003
Antwort Antwort
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#1

FormatDateTime - Englisch

  Alt 11. Jan 2003, 17:18
Hi,

ich schreibe gerade ein multilinguales Programm. Wie kann ich denn FormatDateTime('dd. mmmm yyyy',Date) ins Englische übersetzen (mit englischem Wochentag und Monat)?

Gruß Yheeky
  Mit Zitat antworten Zitat
HAF68k
(Gast)

n/a Beiträge
 
#2

Array

  Alt 12. Jan 2003, 14:41
ich würde das mit einer liste machen

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var
        MonthList:Array[0..11] of String;
        Datum:String;
begin
        MonthList[0]:='January';
        MonthList[1]:='February';
        MonthList[2]:='March';
        MonthList[3]:='April';
        MonthList[4]:='May';
        MonthList[5]:='June';
        MonthList[6]:='July';
        MonthList[7]:='August';
        MonthList[8]:='September';
        MonthList[9]:='October';
        MonthList[10]:='November';
        MonthList[11]:='December';
        Datum:=FormatDateTime('dd.mm.yyyy',Date);
        Edit1.Text:=FormatDateTime('dd',date) + '.' +
                MonthList[StrToInt(FormatDateTime('mm', Date)) - 1] + ' ' +
                FormatDateTime('yyyy',Date);
end;
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#3

Re: FormatDateTime - Englisch

  Alt 12. Jan 2003, 15:42
Zitat von Yheeky:
Hi,

ich schreibe gerade ein multilinguales Programm. Wie kann ich denn FormatDateTime('dd. mmmm yyyy',Date) ins Englische übersetzen (mit englischem Wochentag und Monat)?

Gruß Yheeky
Warum nimmst Du nicht die Monats- und Tagesbezeichnungen vom Betriebssystem? Die Arrays sind in der sysutils.pas deklariert.


ShortMonthNames: array[1..12] of string;
LongMonthNames: array[1..12] of string;
ShortDayNames: array[1..7] of string;
LongDayNames: array[1..7] of string;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
HAF68k
(Gast)

n/a Beiträge
 
#4

schön und gut

  Alt 12. Jan 2003, 18:04
Zitat von Sharky:
Warum nimmst Du nicht die Monats- und Tagesbezeichnungen vom Betriebssystem?
schön und gut
das ist natürlich auch eine möglichkeit
aber wenn man die wochen- bzw. monatsnamen vom betriebssystemm nimmt hat das den nachtteil dass man immer nur die sprache der aktuellen einstellung hat.
ich würde es immer noch so lösen dass man alle nötigen einstellungen für die Sprache in einer externen Datei speichert
Delphi-Quellcode:
[SPRACHEN]
1=Deutsch
2=Englisch
[Deutsch]
1M=Jänner
2M=Februar
...
das hat dann den vorteil dass man änderungen immer vornehmen kann und dass das programm auch wirklich überall lauffähig ist. auf meinen privaten computer habe ich zum beispiel nur deutsch installiert und keine anderen sprachen. da könnten mit sharkys methode evtl. fehler auftreten.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5
  Alt 12. Jan 2003, 18:17
Jungs alles Krampf, was ihr da macht. Meine persönliche Meinung. Lest euch mal die Hilfe zu FormatDateTime durch und folgt mal den Links. Unter "Currency and date/time formatting variables" findet man dann das:
Code:
procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(FormatDateTime(ShortDateFormat+' / '+ShortTimeFormat, now));
end;
Damit wird das Datum und die Zeit so formatiert, wie es im System eingestellt ist. Und man muß sich keine Gedanken über die Sprache und um das "Wie" der Darstellung machen.
Desweiteren freut es jeden User wenn er das Datum und die Zeit so sieht, wie er es sich eingestellt hat.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#6
  Alt 12. Jan 2003, 18:27
@HAF68k: Okay, danke klappt perfekt. Nur wie kann ich das noch mit den Wochentagen machen?

Gruß Yheeky
  Mit Zitat antworten Zitat
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#7
  Alt 12. Jan 2003, 18:28
@Luckie: Ich möchte dem User aber die Möglichkeit geben, das Datum englisch einzustellen, auch wenn er eine deutsche Systemeinstellung hat...
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#8
  Alt 12. Jan 2003, 18:33
Zitat von Luckie:
Jungs alles Krampf, was ihr da macht.
Hört Hört..... und wo stellt man DA die Sprache ein?
Zitat von Yheeky:
Wie kann ich denn FormatDateTime('dd. mmmm yyyy',Date) ins Englische übersetzen (mit englischem Wochentag und Monat)?
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9
  Alt 12. Jan 2003, 18:38
Zitat von Yheeky:
@Luckie: Ich möchte dem User aber die Möglichkeit geben, das Datum englisch einzustellen, auch wenn er eine deutsche Systemeinstellung hat...
Das ging aber aus deinem ersten Postinmg nicht hervor.

Zitat von Sharky:
Hört Hört..... und wo stellt man DA die Sprache ein?
Siehe oben.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort


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 02:42 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