m_grid.SetExtendedStyle(
LVS_EX_FLATSB //扁平風格滾動條
|LVS_EX_FULLROWSELECT //允許整行選中
|LVS_EX_HEADERDRAGDROP //允許標題拖曳
|LVS_EX_ONECLICKACTIVATE //高亮顯示
|LVS_EX_GRIDLINES //畫出網格線
);
m_grid.InsertColumn(0,"姓名",LVCFMT_LEFT,150,0); //插入列
m_grid.InsertColumn(1,"聯繫電話",LVCFMT_LEFT,150,1);
m_grid.InsertItem(0,"");//插入第一行
m_grid.SetItemText(0,0,"周X");
m_grid.SetItemText(0,1,"12345XXXXXX");
m_grid.InsertItem(1,"");//插入第二行
m_grid.SetItemText(1,0,"諸葛X");
m_grid.SetItemText(1,1,"67890XXXXXX");
具有背景的列表視圖控件
有些用戶可能認爲只要從 CListCtrl派生一個子類,然後在WM_PAINT消息處理函數中繪製一幅圖片就可以了。但是,這樣會導致列
表視圖中的數據被背景圖片覆蓋。其實, 實現具有背景的列表視圖控件並不複雜,首先在程序初始化時調用
AfxOleInit()函數初始化Com;
然後調用CListCtrl的 SetBkImage方法設置背景位圖;最後調用SetTextBkColor方法將文本背景透明。程序主要代碼如下:
m_List.SetBkImage("c:\\background2.bmp");
m_List.SetTextBkColor(CLR_NONE);