GetCurrencyFormat, GetCurrencyFormatBynum |
VB声明 |
|
Declare Function GetCurrencyFormat& Lib "kernel32" Alias "GetCurrencyFormatA" (ByVal Locale As Long, ByVal dwFlags As Long, ByVal lpValue As String, lpFormat As CURRENCYFMT, ByVal lpCurrencyStr As String, ByVal cchCurrency As Long) Declare Function GetCurrencyFormatBynum& Lib "kernel32" Alias "GetCurrencyFormatA" (ByVal Locale As Long, ByVal dwFlags As Long, ByVal lpValue As String, ByVal lpFormat As Long, ByVal lpCurrencyStr As String, ByVal cchCurrency As Long) |
|
说明 |
|
针对指定的“地方”设置,根据货币格式格式化一个数字 |
|
返回值 |
|
Long,格式化过后的字串的长度。零表示出错。会将GetLastError设置为下述值之一:ERROR_INSUFFICIENT_BUFFER,ERROR_INVALID_FLAGS,ERROR_INVALID_PARAMETER |
|
参数表 |
|
参数 |
类型及说明 |
Locale |
Long,用于决定格式的地方ID。lpFormat参数中指定的任何信息(倘若不是NULL)都优先于特定于地方的信息 |
dwFlags |
Long,如指定了lpFormat,那么该参数应该为零。否则,可设为LOCALE_NOUSEROVERRIDE,强制使用系统地方参数——即使它们已由用户取代 |
lpValue |
String,指定欲格式化的数字。可以只有数位、一个前缀“-”号以及一个小数点 |
CURRENCYFMT,可设为NULL,使用特定于不同地方的值(用GetCurrencyFormatBynum,则可通过ByVal As Long形式传递这个参数)。否则,可引用一个CURRENCYFMT结构,其中包含所有必要的字段,可填入需要用到的信息 |
|
lpCurrencyStr |
String,指定一个缓冲区,用于容纳格式化过后的字串。注意事先对字串进行初始化 |
cchCurrency |
Long,lpCurrencyStr缓冲区的长度。如为零,表示函数会返回需要缓冲区的大小 |
注解 |
|
在vb里,如使用一个别名,其中的lpFormat设为NULL,则可以正常使用。CURRENCYFMT结构的正确预初始化非常具有挑战性 |