use the function SetBkImage() of CListCtrl

解决方案 »

  1.   

    还是不行,以下是我的代码:
             lvbkimage.ulFlags = LVBKIF_STYLE_NORMAL   ;
    lvbkimage.hbm = hLVBKImage;
    lvbkimage.xOffsetPercent = 0; 
    lvbkimage.yOffsetPercent = 0;
    SendMessage(hListView,LVM_SETBKIMAGE,0,(LPARAM)&lvbkimage);
    对吗?
      

  2.   

    这个问题好象回答过很多次了.一个是重载OnEraseBkGnd,使之不刷。其次重载OnPaint,制一个compatibleDC,在上面画好背景后,把它传入DefWindowProc(WM_PAINT,hdcCompatible...)中使windows把图形画到这个dc上(如果缺省的处理也刷了背景的话就要用透明处理方法).然后拷贝到目标dc上就好。这是一种标准方法可用于很多地方.
      

  3.   

    设成owner!再在程序中用
    CListCtrl m_clCLt;
    m_clCLt.LoadBitmap("IDB_XXX");
    应该可以的
    我可以帮你试一下!
      

  4.   

    用SetBkImage(...)
    注意:
    在App 添加
    BOOL CXXXApp::InitInstance()
    {
    ...
    OleInitialize(NULL);
    ...
    }
    在App添加
    int CXXXApp::ExitInstance() 
    {
    ...
    OleUninitialize();
    ...
    }
      

  5.   

    有三种方法:
    CListCtrl::SetBkImage
    BOOL SetBkImage( LVBKIMAGE* plvbkImage );BOOL SetBkImage( HBITMAP hbm, BOOL fTile = TRUE, int xOffsetPercent = 0, int yOffsetPercent = 0);BOOL SetBkImage( LPTSTR pszUrl, BOOL fTile = TRUE, int xOffsetPercent = 0, int yOffsetPercent = 0 );实在不行,可以使用第三种!!
      

  6.   

    //使用ListView_SetBkImage()来设置LISTVIEW的背景图案由于LISTVIEW是使用OLE COM去操作背景,所以需要在程序开始
    的时候,执行
    。。
    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的背景,但是效果很不好,
    的确不如使用“物主绘图”技术,自己编写代码来实现,虽然复杂些。
      

  7.   

    to huangbeyond(校园人渣)
    谢了!
    问一下Version 4.71这是什么版本??应该如何查看版本号?
      

  8.   

    以下是我的Comdlg32.dll版本号,好象没有4.71这个版本,以后的版本LVBKIF_SOURCE_HBITMAP也不支持么?
    Product Ver   : 5.0.2614.3500
    Image Ver     : 5.0
    Linker Ver    : 5.12
    OS Ver        : 5.0
    Subsystem Ver : 4.0