Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут
закрыты.
Читайте
требования к создаваемым темам.
-
$Yastrebov$
-
- Продвинутый пользователь
-
-
- Сообщения: 154
- Зарегистрирован: 24.01.2007 (Ср) 7:27
- Откуда: Ukraine
$Yastrebov$ » 07.04.2010 (Ср) 21:44
Как получить маску установленного в системе (по региональным стандартам) формата времени? Что-то вроде такого "H:mm:ss".
Жизнь, она как коробка конфет - никогда не знаешь, что вытянешь!
-
$Yastrebov$
-
- Продвинутый пользователь
-
-
- Сообщения: 154
- Зарегистрирован: 24.01.2007 (Ср) 7:27
- Откуда: Ukraine
$Yastrebov$ » 07.04.2010 (Ср) 23:23
Нашел сам, если кому нужно:
- Код: Выделить всё
Private Declare Function GetUserDefaultLCID Lib "kernel32" () As Long
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
Private Const LOCALE_SSHORTDATE = &H1F ' Краткий формат даты.
Private Const LOCALE_SLONGDATE = &H20 ' Длинный формат даты
Private Const LOCALE_STIMEFORMAT = &H1003 ' Формат времени.
Private Const LOCALE_SDATE = &H1D ' Разделитель даты.
Private Const LOCALE_STIME = &H1E ' Разделитель времени.
Public Sub GetDateTimeSettings()
Dim str As String * 100
GetLocaleInfo GetUserDefaultLCID, LOCALE_SSHORTDATE, str, 99
Debug.Print fnTrimNull(str)
GetLocaleInfo GetUserDefaultLCID, LOCALE_SLONGDATE, str, 99
Debug.Print fnTrimNull(str)
GetLocaleInfo GetUserDefaultLCID, LOCALE_STIMEFORMAT, str, 99
Debug.Print fnTrimNull(str)
GetLocaleInfo GetUserDefaultLCID, LOCALE_SDATE, str, 99
Debug.Print fnTrimNull(str)
GetLocaleInfo GetUserDefaultLCID, LOCALE_STIME, str, 99
Debug.Print fnTrimNull(str)
End Sub
Function fnTrimNull( _
ByVal strValue As String) As String
Dim intPos As Integer
intPos = InStr(strValue, vbNullChar)
Select Case intPos
Case 0
Case 1
fnTrimNull = ""
Case Is > 1
fnTrimNull = Left(strValue, intPos - 1)
End Select
End Function
Жизнь, она как коробка конфет - никогда не знаешь, что вытянешь!
-
Saturn.65
-
- Постоялец
-
-
- Сообщения: 543
- Зарегистрирован: 13.10.2006 (Пт) 18:46
-
Saturn.65 » 02.05.2010 (Вс) 14:19
А так что?
- Код: Выделить всё
Label1.Caption = Format(Time, "hh:nn:ss")
Главное, ребята, сердцем не стареть...
-
$Yastrebov$
-
- Продвинутый пользователь
-
-
- Сообщения: 154
- Зарегистрирован: 24.01.2007 (Ср) 7:27
- Откуда: Ukraine
$Yastrebov$ » 02.05.2010 (Вс) 20:29
Так получишь формат времени hh:nn:ss, независимо от региональных настроек. И если у человека время "1:03:55 PM", то он должен лицезреть непривычное для него: 13:03:55
Жизнь, она как коробка конфет - никогда не знаешь, что вытянешь!
-
Saturn.65
-
- Постоялец
-
-
- Сообщения: 543
- Зарегистрирован: 13.10.2006 (Пт) 18:46
-
Saturn.65 » 02.05.2010 (Вс) 21:05
$Yastrebov$ писал(а): И если у человека время "1:03:55 PM", то он должен лицезреть непривычное для него: 13:03:55
Читал про формат Media Time. Который и дает PM.
Главное, ребята, сердцем не стареть...
-
Joo
-
- Постоялец
-
-
- Сообщения: 762
- Зарегистрирован: 14.08.2008 (Чт) 11:55
- Откуда: Казахстан
-
Joo » 03.05.2010 (Пн) 7:47
- Код: Выделить всё
Format(Time,"t")
"Им будет не просто, тем кто полагается на истину авторитета, вместо того чтобы полагаться на авторитет Истины"
Джеральд Месси, Египтолог
Вернуться в Visual Basic 1–6
Кто сейчас на конференции
Сейчас этот форум просматривают: Google-бот, SemrushBot и гости: 2