Попробуйте это из сообщения в старой группе новостей VB6 от MikeD
Это можно сделать с помощью DTPicker с помощью Win32 API.DTPicker использует фактический элемент управления MonthView.Вы можете отправить этому элементу управления MCM_SETFIRSTDAYOFWEEK сообщение , чтобы изменить первый день недели.Обратите внимание, что вы должны (и можете только) делать это в событии DropDown, поскольку до этого элемент управления MonthView не существовал.MonthView разрушается после события CloseUp.Ох ... значение для первого дня недели - это lParam SendMessage (wParam всегда равно 0)
Option Explicit
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA"
(ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As
Any) As Long
Private Const MCM_FIRST As Long = &H1000&
Private Const MCM_SETFIRSTDAYOFWEEK As Long = (MCM_FIRST + 15)
Private Const DTM_FIRST As Long = &H1000&
Private Const DTM_GETMONTHCAL As Long = (DTM_FIRST + 8)
Private Sub DTPicker1_DropDown()
Dim hMonthview As Long
'Get hwnd of MonthView control
hMonthview = SendMessage(DTPicker1.hwnd, DTM_GETMONTHCAL, 0&, ByVal 0&)
'Set first day of week for MonthView, according to the following:
' Value Day of Week
' 0 Monday
' 1 Tuesday
' 2 Wednesday
' 3 Thursday
' 4 Friday
' 5 Saturday
' 6 Sunday
Call SendMessage(hMonthview, MCM_SETFIRSTDAYOFWEEK, 0&, ByVal 6&) 'first
day of week = Sunday
End Sub