Сообщение IPM_SETRANGE

Const IPM_SETRANGE = &H467

Сообщение IPM_SETRANGE устанавливает допустимые пределы ввода чисел в IP address control

Возвращаемое значение

В успешном случае возвращается ненулевое значение, в противном случае возвращается 0

Параметры

wParam
Поле (отсчет от 0) для установки предела
lParam
16-битное значение, устанавливающее допустимые пределы и содержащее нижнюю и верхнюю границы предельных значений. Используйте макрос MAKEIPRANGE для создания этих пределов

Пример

' При загрузке формы будет программно создан
' элемент IP Address control в верхнем углу формы
' Будут установлены пределы, позволяющие пользователю вводить
' значения от 128.10.0.0 до 128.11.255.255

' В General Declaration

Private hIPControl As Long  ' дескриптор IP Address control

' Создаем IP Address control при инициализации формы
Private Sub Form_Initialize()
Dim comctls As INITCOMMONCONTROLSEX_TYPE  ' определяем тип класса элемента управления для регистрации
Dim retval As Long
' Регистрируем IP Address contro
With comctls
   .dwSize = Len(comctls)
   .dwICC = ICC_INTERNET_CLASSES
End With
retval = InitCommonControlsEx(comctls)	' Создаем IP Address control в углу окна
hIPControl = CreateWindowEx(0, WC_IPADDRESS, "", WS_CHILD Or WS_VISIBLE, 0, 0, 125, 20, _
   Me.hWnd, 0, App.hInstance, ByVal CLng(0))
	
' Ограничиваем пределы доступных IP-адресов между 128.10.0.0 и 128.11.255.255
' (мы используем для этих целей только первые два поля ввода
retval = SendMessage(hIPControl, IPM_SETRANGE, ByVal CLng(0), ByVal MAKEIPRANGE(128, 128))
retval = SendMessage(hIPControl, IPM_SETRANGE,ByVal CLng(1), ByVal MAKEIPRANGE(10, 11))
End Sub

' Уничтожаем IP Address control при закрытии окна
Private Sub Form_Unload(Cancel As Integer)

Dim retval As Long
retval = DestroyWindow(hIPControl)
End Sub

Категория

IP Address Control