vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Re: Zahlenformat 
Autor: ModeratorDieter (Moderator)
Datum: 04.08.08 07:28

Ich habe mir hierzu einmal folgende Funkton geschrieben:
' benötigte API-Deklarationen
Private Declare Function GetSystemDefaultLCID Lib "kernel32" () As Long
 
Private Declare Function GetUserDefaultLCID Lib "kernel32" () As Long
 
Private Declare Function SetLocaleInfo Lib "kernel32" _
  Alias "SetLocaleInfoA" ( _
  ByVal Locale As Long, _
  ByVal LCType As Long, _
  ByVal lpLCData As String) As Long
 
Private Declare Function PostMessage Lib "user32" _
  Alias "PostMessageA" ( _
  ByVal hWnd As Long, _
  ByVal wMsg As Long, _
  ByVal wParam As Long, _
  ByVal lParam As Long) As Long
 
Private Const LOCALE_SMONDECIMALSEP = &H16
Private Const LOCALE_SDECIMAL = &HE
Private Const LOCALE_SMONTHOUSANDSEP = &H17
Private Const LOCALE_STHOUSAND = &HF
 
Private Const WM_SETTINGCHANGE = &H1A
Private Const HWND_BROADCAST = &HFFFF&
Public Function SetNewNumberFormat(ByVal sDecChar As String, _
  Optional ByVal sGroupChar As String = "", _
  Optional ByVal bAllUser As Boolean = True) As Boolean
 
  Dim nLCID As Long
  Dim bResult As Boolean
 
  If bAllUser Then
    ' systemweite Änderung für alle Benutzer
    nLCID = GetSystemDefaultLCID()
  Else
    ' Änderung nur für den aktuell angemeldeten Benutzer
    nLCID = GetUserDefaultLCID()
  End If
 
  ' Neues Währungsformat setzen
  bResult = (SetLocaleInfo(nLCID, LOCALE_SMONDECIMALSEP, sDecChar) <> 0)
  bResult = (SetLocaleInfo(nLCID, LOCALE_SMONTHOUSANDSEP, sGroupChar) <> 0)
 
  ' Neues Zahlenformat setzen
  bResult = (SetLocaleInfo(nLCID, LOCALE_SDECIMAL, sDecChar) <> 0)
  bResult = (SetLocaleInfo(nLCID, LOCALE_STHOUSAND, sGroupChar) <> 0)
  If bResult Then
    ' System über die Änderung benachrichtigen
    PostMessage HWND_BROADCAST, WM_SETTINGCHANGE, 0, 0
  End If
 
  SetNewNumberFormat = bResult
End Function

_________________________
Professionelle Entwicklerkomponenten
www.tools4vb.de

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Zahlenformat1.662zwitsch02.08.08 10:46
Re: Zahlenformat1.191ModeratorDieter04.08.08 07:28
Re: Zahlenformat1.069zwitsch23.08.08 16:06

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 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