Согласование UpDown с Buddy контролем, Корректная работа в UserControl - VB

Узнай цену своей работы

Формулировка задачи:

В UserControl создаю элемент UpDown для элемента с дескриптором m_BuddyhWnd следующим образом:
Однако команда SendMessage не дает требуемого эффекта: сообщения UDS_SETBUDDYINT и UDS_NOTHOUSANDS не работают!!! В приводимых на сайтах по Visual C++ примерах говорится о синхронизации обоих элементов контроля: UpDown и, например, TextBox. Как осуществить эту синхронизацию, почему команда UDM_SETBUDDY не дает требуемого результата в UserControl?, в то время как в ClassModule работает безукаризненно??? При создании подпрограммы обратного вызова на сообщения процедуры Windows

SetWindowLong

структура

tNMH.idfrom = 0

. Почему???
Заране спасибо за конкретные подробные ответы.

Решение задачи: «Согласование UpDown с Buddy контролем, Корректная работа в UserControl»

textual
Листинг программы
    If (m_hWnd = 0) Then 
        m_hWndParent = GetParent(UserControl.hwnd)
        '// Создать элемент управления UpDown 
        m_hWnd = CreateWindowEx(WS_EX_STATICEDGE, UPDOWN_CLASS, vbNullString, dwStyle, _ 
                                0, 0, UserControl.ScaleWidth  Screen.TwipsPerPixelX, UserControl.ScaleHeight  Screen.TwipsPerPixelY, _ 
                                m_hWndParent, 0, App.hInstance, ByVal 0&) 
        If (m_hWnd <> 0) Then 
            ' Установить окно пользователя для управления UpDown. 
            ' Возвращаемое значение - дескриптор предыдущего окна пользователя 
            Call SendMessage(m_hWnd, UDM_SETBUDDY, m_BuddyhWnd, ByVal 0&) 
        End If
    End If

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4 из 5
Похожие ответы