工控编程吧

标题: 上位机MFC如何设置列表控件的背景图片 [打印本页]

作者: qq263946146    时间: 2019-7-29 12:51
标题: 上位机MFC如何设置列表控件的背景图片
我们可以自己准备一bmp格式的位图,然后添加列表控件,关联变量        CListCtrl        m_ctrlList;
调用变量的成员函数SetBkImage来设置背景图片。
例如我们准备一个程序供大家学习
可以在程序初始化时调用下面代码实现。
  1. AfxOleInit();

  2.                 //设置列表控件的报表显示方式
  3.         m_ctrlList.ModifyStyle(LVS_ICON | LVS_SMALLICON | LVS_LIST, LVS_REPORT);

  4.         //在列表控件中插入列
  5.         for (int n = 0; n < 4; n++)
  6.         {
  7.                 CString strColumnHeading = _T("");
  8.                 strColumnHeading.Format(_T("Column %d"), n);
  9.                 m_ctrlList.InsertColumn(n, strColumnHeading, LVCFMT_LEFT, 100);
  10.         }

  11.         //在列表控件中插入项
  12.         for (int m = 0; m < 10; m++)
  13.         {
  14.                 CString strItem = _T("");
  15.                 strItem.Format("Item %d", m);
  16.                 m_ctrlList.InsertItem(m, strItem);

  17.                 //设置列表中项的文本和数据
  18.                 for (int n = 1; n < 4; n++)
  19.                 {
  20.                         CString strText = _T("");
  21.                         strText.Format(_T("SubItem %d %d"), m, n);
  22.                         m_ctrlList.SetItemText(m, n, strText);
  23.                         m_ctrlList.SetItemData(m, m);
  24.                 }
  25.         }

  26.         //设置列表控件的背景图片
  27.         char c[100];
  28.         GetModuleFileName(NULL,c,100);
  29.         CString sName(c);
  30.         sName= sName.Left(sName.ReverseFind('\\')+1);
  31.         sName += "1.bmp";
  32.         m_ctrlList.SetBkImage(sName.GetBuffer(0));

  33.         //设置文本背景颜色为透明色
  34.         m_ctrlList.SetTextBkColor(CLR_NONE);
复制代码
(, 下载次数: 1)