vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   RSS-Feeds  | Newsletter  | Impressum  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2015
 
zurück
Rubrik: Windows/System22.03.05
GetDateFormat-Funktion

Diese Funktion formatiert einen Datums-String anhand einer SYSTEMTIME-Struktur.

Betriebssystem:  Win95, Win98, WinNT 4.0, Win2000, WinMEViews:  5.681 

Summer-Special bei Tools & Components!
Gute Laune Sommer bei Tools & Components
Top Summer-Special - Sparen Sie teilweise über 100,- EUR
Alle sev-Entwicklerkomponenten und Komplettpakete jetzt bis zu 25% reduziert!
zum Beispiel:
  • Developer CD nur 455,- EUR statt 569,- EUR
  • sevDTA 2.0 nur 224,30 EUR statt 299,- EUR
  •  
  • vb@rchiv   Vol.6 nur 18,70 EUR statt 24,95 EUR
  • sevCoolbar 3.0 nur 58,70 EUR statt 69,- EUR
  • - Werbung -Und viele weitere Angebote           Aktionspreise nur für kurze Zeit gültig

    Deklaration:

    Declare Function GetDateFormat Lib "kernel32.dll" _
      Alias "GetDateFormatA"  ( _
      ByVal Locale As Long, _
      ByVal dwFlags As Long, _
      lpDate As SYSTEMTIME, _
      ByVal lpFormat As Any, _
      ByVal lpDateStr As String, _
      ByVal cchDate As Long) As Long

    Beschreibung:
    Diese Funktion formatiert einen Datums-String anhand einer SYSTEMTIME-Struktur.

    Parameter:
    LocaleErwartet eine der "Locale"-Konstanten, die beschreiben, welche Formateinstellung zur Formatierung benutzt werden sollen.
    dwFlagsErwartet eine oder eine Kombination mehrerer "Flags"-Konstanten, die weitere Optionen bei der Formatierung festlegen.
    lpDateErwartet eine SYSTEMTIME-Struktur, die mit dem zu formatierenden Datum gefüllt ist.
    lpFormatErwartet das Format, in dem das Datum ausgegeben werden soll. Die einzelnen Kommandos können mit Leerzeichen voneinander getrennt werden. Nicht beschriebeneWerte oder im Format enthaltener Text müssen in einzelne Anführungsstriche gefasst sein ("'"").
     
    Folgende Formate können angegeben werden:
    • d
      Tag des Datums als Zahl ohne führende "0" bei einstelligenZahlen 
    • dd
      Tag des Datums als Zahl mit führender "0" bei zweistelligenZahlen 
    • ddd
      Tag des Datums als dreistelliger Text z.B. Mon für Montag 
    • dddd
      Tag des Datums als Wort 
    • M
      Monat des Datums als Zahl ohne führende "0" bei einstelligenZahlen 
    • MM
      Monat des Datums als Zahl mit führender "0" bei zweistelligenZahlen 
    • MMM
      Monat des Datums als dreistelliger Text z.B. Jan für Januar 
    • MMMM
      Monat des Datums als Wort 
    • y
      Jahrzehnt des Datums als Zahl ohne führende "0" bei einstelligenZahlen 
    • yy
      Jahrzehnt des Datums als Zahl mit führender "0" bei zweistelligenZahlen 
    • yyyy
      Komplettes Jahr. 
    • gg
      ID der Lokalen Ländereinstellung
    lpDateStrErwartet einen Puffer, der mit demformatierten String gefüllt wird.
    cchDateErwartet die Größe des Puffers in Bytes.

    Locale Konstanten:

    Const LOCALE_SYSTEM_DEFAULT = &H400
    ' Zeitformat des Systems
     
    Const LOCALE_USER_DEFAULT = &H800
    ' Zeitformat des aktuellen Benutzers

    Rückgabewert:
    Ist die Funktion erfolgreich, so liefert sie die Länge des formatierten Strings, andernfallswird der Wert "0" zurückgegeben. Für erweiterte Fehlerinformationen könnenSie die GetLastError-Funktionaufrufen.

    Beispiel:

    Private Declare Function GetDateFormat Lib "kernel32.dll" _
      Alias "GetDateFormatA" ( _
      ByVal Locale As Long, _
      ByVal dwFlags As Long, _
      lpDate As SYSTEMTIME, _
      ByVal lpFormat As Any, _
      ByVal lpDateStr As String, _
      ByVal cchDate  As Long) As Long
    Private Declare Sub GetLocalTime Lib "kernel32.dll" (lpSystemTime As SYSTEMTIME) 
     
    Private Type SYSTEMTIME
      wYear As Integer
      wMonth As Integer
      wDayOfWeek As Integer
      wDay As Integer
      wHour As Integer
      wMinute As Integer
      wSecond As Integer
      wMilliseconds As Integer
    End Type
     
    ' GetDateFormat Locale-Konstanten
    Private Const LOCALE_SYSTEM_DEFAULT = &H400 ' Zeitformat des Systems
    Private Const LOCALE_USER_DEFAULT = &H800 ' Zeitformat des aktuellen Benutzers
     
    ' GetDateFormat dwFlags-Konstanten
    Private Const LOCALE_NOUSEROVERRIDE = &H80000000 
    ' Standard-Systemformat des Datums wird genutzt und die Benutzereinstellungen ignoriert
    Private Const LOCALE_USE_CP_ACP = &H40000000 
    ' der ANSI Zeichensatz soll für die Darstellung des Formats benutzt werden
    Private Const DATE_SHORTDATE = &H1     ' formatiert das Datum als kurzes Datum
    Private Const DATE_LONGDATE = &H2        ' formatiert das Datum als langes Datum
    Private Const DATE_USE_ALT_CALENDAR = &H4 
    ' wenn ein alternativer Kalender existiert, sollen dessen Werte benutzt werden
    Private Const DATE_YEARMONTH = &H8 
    ' formatiert das Datum nach dem Monat/Jahr Format
    Private Const DATE_LTRREADING = &H10   ' das Datum wird von links nach rechts formatiert 
    Private Const DATE_RTLREADING = &H20   ' das Datum wird von rechts nach links formatiert
    ' formatiertes Datum ausgeben
    Private Sub Command1_Click()
      Dim ST As SYSTEMTIME, FDate As String * 256, Retval As Long
     
      ' aktuelles Datum ermitteln
      Call GetLocalTime(ST)
     
      ' Datum formatieren
      Retval = GetDateFormat(0&, 0&, ST, "dddd', der 'dd MMMM yyyy", FDate, ' Len(FDate)) 
     
      ' Datum ausgeben
      MsgBox Left$(FDate, Retval), , "Aktuelles Datum"
    End Sub

    Diese Seite wurde bereits 5.681 mal aufgerufen.

    nach obenzurück
     
       

    Druckansicht Druckansicht Copyright ©2000-2015 vb@rchiv Dieter Otter
    Alle Rechte vorbehalten.

    Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

    Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel