VB-Homepage Tipp 182

Ländereinstellungen auslesen

Ländereinstellungen sind zum Beispiel Währungsangaben oder Trennzeichen.
Und diese Informationen könnten ja für Ihr Programm durchaus von Interesse sein auch gerade in Bezug auf den kommenden Euro. also ein ganz heißer Tipp.

Wie Sie letztendlich die ermittelten Werte anzeigen oder auswerten lassen, ist Ihnen überlassen. Hier im Tipp sollen die Werte lediglich in einer Listbox ausgegeben werden.

Definieren Sie also in einem neuen Projekt, mit einer Form, einem Command Button und einer Listbox folgende Anweisungen.

Allgemein/Deklarationen
Const LOCALE_USER_DEFAULT = &H400
Const LOCALE_SCURRENCY = &H14
Const LOCALE_SINTLSYMBOL = &H15
Const LOCALE_SMONDECIMALSEP = &H16
Const LOCALE_SMONTHOUSANDSEP = &H17
Const LOCALE_SMONGROUPING = &H18
Const LOCALE_ICURRDIGITS = &H19

Private Declare Function GetLocaleInfo Lib "kernel32" Alias "GetLocaleInfoA" (ByVal Locale As Long, ByVal LCType As Long, ByVal lpLCData As String, ByVal cchData As Long) As Long

Allgemein/LPSTRToVBString - wird durch das Code einfügen angelegt
Public Function LPSTRToVBString$(ByVal s$)
Dim nullpos&
nullpos& = InStr(s$, Chr$(0))
If nullpos > 0 Then
   LPSTRToVBString = Left$(s$, nullpos - 1)
Else
   LPSTRToVBString = ""
End If
End Function

Command1_Click
list1.Clear
Dim buffer As String * 100
Dim dl&

dl& = GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_SCURRENCY, buffer, 99)
Form1.list1.AddItem " Währungseinheit: " & LPSTRToVBString(buffer)
dl& = GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_SINTLSYMBOL, buffer, 99)
Form1.list1.AddItem " Int. Währungsangabe: " & LPSTRToVBString(buffer)
dl& = GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_SMONDECIMALSEP, buffer, 99)
Form1.list1.AddItem " Dezimaltrennzeichen: " & LPSTRToVBString(buffer)
dl& = GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_SMONTHOUSANDSEP, buffer, 99)
Form1.list1.AddItem " Tausend Trennzeichen: " & LPSTRToVBString(buffer)
dl& = GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_SMONGROUPING, buffer, 99)
Form1.list1.AddItem " Zahlengruppierung: " & LPSTRToVBString(buffer)
dl& = GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_ICURRDIGITS, buffer, 99)
Form1.list1.AddItem " Dezimalstellen: " & LPSTRToVBString(buffer)

Sie können nun Ihr Projekt mit F5 starten und sich mit einem Klick auf den Command Button die Werte anzeigen lassen.


Tipp-Download

Quelle :

Zurück zur Übersichtsseite