На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
[!] Как относитесь к модерированию на этом форуме? Выскажите свое мнение здесь
Модераторы: Qraizer
  
> MFC/ Раскрашивание элементов в CListView
    При размещении списка элементов класса CListCtrl в окошке ,произошедшем от CListView, столкнулся с проблемой. Как можно изменить, например background, неактивных элементов списка?
    Спасибо.
      Напиши класс производный от CListCtrl и в нем наследую функцию DrawItem, она рисует элементы. Потом создай CListView на основе нового класса
        Смотри MSDN:
        Platgform SDK/User Interface Services/Windows Common Controls/List View Controls/Overview of List View Controls/List View Colors ...
        точнее
        NM_CUSTOMDRAW
          Так яиспользовал для Дерева, но суть таже
          BEGIN_MESSAGE_MAP(
          ....
          ON_NOTIFY_REFLECT(NM_CUSTOMDRAW, OnCustomDraw)
          void CColorView::OnCustomDraw(NMHDR* pNMHDR, LRESULT* pResult)
          {
          NMTVCUSTOMDRAW* pTVCustomDraw = (NMTVCUSTOMDRAW*)pNMHDR;
          *pResult = CDRF_DODEFAULT;
          switch(pTVCustomDraw->nmcd.dwDrawStage)
          {
          case CDDS_PREPAINT:
          *pResult |= CDRF_NOTIFYITEMDRAW;
          break;
          case CDDS_ITEMPREPAINT:
          pTVCustomDraw->clrText = RGB(0, 0, 255 - (25 * pTVCustomDraw->iLevel));
          break;
          }
          }
          1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
          0 пользователей:


          Рейтинг@Mail.ru
          [ Script execution time: 0,0162 ]   [ 15 queries used ]   [ Generated: 19.05.24, 03:12 GMT ]