Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: Разделители целой и дробной части, разрядов Добавлено: 12.01.10 12:39  

Автор вопроса:  AngryBadger
Всем привет!

Как в vb6 узнать системные разделители целой и дробной части, а также разделитель групп разрядов???

Ответить

  Ответы Всего ответов: 3  

Номер ответа: 1
Автор ответа:
 VβÐUηìt



Вопросов: 246
Ответов: 3333
 Web-сайт: смекаешь.рф
 Профиль | | #1
Добавлено: 12.01.10 13:44
  1.  
  2. Function GetFloatPoint() As String
  3. Static g As String
  4. If g = "" Then
  5. Dim i As Byte
  6. For i = 1 To 255
  7. If Not IsNumeric(Chr(i)) Then
  8. If IsNumeric("3" & Chr(i) & "555") Then
  9. If Val("3" & Chr(i) & "555") < 4 Then
  10. g = Chr(i)
  11. Exit For
  12. End If
  13. End If
  14. End If
  15. Next
  16. End If
  17. GetFloatPoint = g
  18. End Function






  1.  
  2. Function GetSeparatorDischarges() As String
  3. Static g As String
  4. If g = "" Then
  5. Dim i As Byte
  6. For i = 1 To 255
  7. If Not IsNumeric(Chr(i)) Then
  8. If IsNumeric("3" & Chr(i) & "555") Then
  9. If Val("3" & Chr(i) & "555") > 3000 Then
  10. g = Chr(i)
  11. Exit For
  12. End If
  13. End If
  14. End If
  15. Next
  16. End If
  17. GetSeparatorDischarges = g
  18. End Function

Ответить

Номер ответа: 2
Автор ответа:
 Саня



ICQ: 553816426 

Вопросов: 10
Ответов: 99
 Профиль | | #2 Добавлено: 12.01.10 14:23
Узнать эти данные можно с помощью API
  1. 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
  2. Const LOCALE_NOUSEROVERRIDE = &H80000000
  3. Const LOCALE_SDECIMAL = &HE
  4. Const LOCALE_SGROUPING = &H10
  5. Const LOCALE_STHOUSAND = &HF
  6. Const LOCALE_SDATE = &H1D
  7. Const LOCALE_SSHORTDATE = &H1F
  8. Const LOCALE_SLONGDATE = &H20
  9. Const LOCALE_SMONDECIMALSEP = &H16
  10. Const LOCALE_SMONTHOUSANDSEP = &H17
  11. Public Function vbGetLocaleInfo(lcInfoType&) As String
  12. Dim Locale As Long, lpLCData As String, cchData As Long
  13. lpLCData = Space(16)
  14. cchData = 16
  15. If GetLocaleInfo(Locale, lcInfoType, lpLCData, cchData) Then vbGetLocaleInfo = Left$(lpLCData, 1)
  16. End Function
  17. Private Sub Form_Load()
  18. Dim sDecimal As String
  19. Dim sHousand As String
  20. sDecimal = vbGetLocaleInfo(LOCALE_SDECIMAL) 'Разделитель дробной части
  21. sHousand = vbGetLocaleInfo(LOCALE_STHOUSAND) 'Разделитель групп разрядов
  22. End Sub

Ответить

Номер ответа: 3
Автор ответа:
 AngryBadger



Вопросов: 33
Ответов: 245
 Профиль | | #3 Добавлено: 12.01.10 14:52
Супер!

Спасибо!

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам