Note Because CListCtrl::SetBkImage makes use of OLE COM functionality, the OLE libraries must be initialized before using SetBkImage. It is best to initialize the COM libraries when the application is initialized and uninitialize the libraries when the application terminates. This is automatically done in MFC applications that make use of ActiveX technology, OLE Automation, OLE Linking/Embedding, or ODBC/DAO operations.
CWinApp::ExitInstance 调用CoUninitialize来反初始化。
的时候,执行
。。
CoInitialize(NULL);//#include "ole2.h"
。。而在程序退出的时候,执行
CoUninitialize();//#include "objbase.h"
这里是实现BK。LVBKIMAGE lbi;
char lpURL[]="d:\\hw.bmp";//指向一个确定的URL,可以是本地文件,也可以是URL的网络资源
lbi.ulFlags=LVBKIF_STYLE_NORMAL|LVBKIF_STYLE_TILE|LVBKIF_SOURCE_URL;
//LVBKIF_SOURCE_HBITMAP,Version 4.71不支持此参数。
//lbi.hbm=LoadBitmap(hInstance,MAKEINTRESOURCE(IDB_BITMAP1));
lbi.pszImage=lpURL;
lbi.cchImageMax=sizeof(lpURL);
lbi.xOffsetPercent=15;
lbi.yOffsetPercent=15;
ListView_SetBkImage(hListView,&lbi);说实话,这样能设置LISTVIEW的背景,但是效果很不好,
的确不如使用“物主绘图”技术,自己编写代码来实现,虽然复杂些。