加入收藏  广告服务  关于我们
 2007-12-26

用VB得到本机的配置信息,如货币符号、日期分隔符等。

发表:miocaro507   阅读:次  关键字:VB,货币符号,日期分隔   字体:[ ]

在编写应用程序时,我们需要知道本机的一些配置信息,如货币符号、日期分隔符等。我们可以通过GetLocaleInfo这个API来取得。

在模块及声明做以下声明:

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

Public Function WinLocaleInfo(ByVal lnfoType As Long) As String
  Dim sLCData As String
  Dim nRet As Long
  nRet = GetLocaleInfo(0, lnfoType, sLCData, 0)
  If nRet Then
    sLCData = Space$(nRet)
    nRet = GetLocaleInfo(0, lnfoType, sLCData, Len(sLCData))
    If nRet Then
      WinLocaleInfo = Left$(sLCData, nRet)
    End If
  End If
End Function

实际应用的时候,可传入的参数相当多,到底有多少我也说不清。不过不用担心,我们可以使用VB自带的API工具找到我们需要的参数。这些参数有一个特点,都是以 "LOCALE_" 为开头的字符串,举个例子。

LOCALE_SCURRENCY = &H14 '货币符号
LOCALE_SDATE = &H1D '日期分隔符
LOCALE_SDAYNAME1 = &H2A '完整星期名称
LOCALE_SDECIMAL = &HE '小数点符号

Private Sub Command1_Click()
  Text1 = WinLocaleInfo(&H14) '可能传回 NT$
  Text2 = WinLocaleInfo(&H1D) '可能传回 /
  Text3 = WinLocaleInfo(&H2A) '可能传回 星期一
  Text4 = WinLocaleInfo(&HE) '可能传回 .
End Sub

希望对大家有帮助!

 热门文章
 推荐信息