powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Частичная отрисовка AxControl
2 сообщений из 2, страница 1 из 1
Частичная отрисовка AxControl
    #33331934
RubinDm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Частичная отрисовка AxControl... Как вычислить инвалидный рект?
Отрисовка целиком действительно НЕ устраивает.

я пробовал так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
HRESULT CMyControl::OnDraw(ATL_DRAWINFO& di)
{
    if(m_hWnd != NULL)
    {
      CRect r;
      if(!(::GetUpdateRect(m_hWnd, &r, FALSE)))
      {
        Fire_OnUpdateRect(r.left, r.top, r.right, r.bottom);
      } // if(!(::GetUpdateRect(m_hWnd, &r, FALSE)))
    } // if(m_hWnd != NULL)
    // далее стандартный код типа TextOut(...)
    // из примеров msdn для начинающих.
    return S_OK;
}
и все вроде зашибись, событие варится,
но только рект почему-то всегда пустой (0,0,0,0).
Пробовал windowless и НЕwindowless ваоианты,
использовал m_hWnd и m_hWndCD потому как
пока плохо понимаю что к чему и зачем, но
все бестолку.

Поможите......
...
Рейтинг: 0 / 0
Частичная отрисовка AxControl
    #33333865
RubinDm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вижу что ответов я не вижу, потому отвесу сам себе, мож-кому и поможет в будущем =))

насчет отрисовки Ax... я так понял, что многое зависит от контейнера содержащего контрол, о того, что именно передается в wParam вместе с WM_PAINT от контейнера контролу. по идее там должен быть DC, но фактически там NULL. Проверено на клиенте С# и AxCtrl Viewer. При таком раскладе внутри COleControl::OnPaint(pDC) создается новый контекст из m_hWnd, в новом DC выставляется рект на весь контрол. т.е. все что CComContril мог бы сделать - он делает. если бы wParam содержал контекст - все было бы куда проще. Осталось понять каким макаром заставить контейнер заполнять wParam. Может метод какой в контроле реализовать нужно, в котором бы выставлялось что-то типа флагов, а-ля "flagUseDCinWParam"? =)
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Частичная отрисовка AxControl
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]