我的源有一个16位颜色的图片IDB_BITMAP1!(无法编辑)1.请问如何设置我的对话框程序的背景为这个16位Bitmap????
2.按纽属性已设置成为了Bitmap!
请问如何将我的对话框上的按纽背景设置成为这个16位Bitmap???

解决方案 »

  1.   

    在资源中是无法编辑,
    但是在程序中LoadBitmap是可以用的,会起效果的,放心用好了。
      

  2.   

    .请问如何设置我的对话框程序的背景为这个16位Bitmap????
    2.按纽属性已设置成为了Bitmap!
    请问如何将我的对话框上的按纽背景设置成为这个16位Bitmap???
      

  3.   

    关键的问题就是怎样将这个资源转换成HBITMAP句柄!?????好用来m_Button1.SetBitmap()
      

  4.   

    处理dialog或是按纽的WM_PAINT消息,然后试试下面的代码
    case WM_PAINT:
              PAINTSTRUCT ps;
              HDC hdc;
    hdc = BeginPaint(hWnd, &ps);

    HDC hBMDC;
    HBITMAP hBitmap,hBitmapOld; hBitmap=NULL;
    SetBkMode(hdc, TRANSPARENT);

             hBitmap = LoadBitmap(hInst,MAKEINTRESOURCE(IDB_BITMAP1)); hBMDC = CreateCompatibleDC(hdc); 
    hBitmapOld=(HBITMAP)SelectObject(hBMDC,hBitmap); 
                
    StretchBlt(hdc,0,0,PIC_STEP_WIDTH,PIC_STEP_HEIGHT,hBMDC,
    0,0,PIC_STEP_WIDTH,PIC_STEP_HEIGHT,SRCCOPY);

    SelectObject(hBMDC,hBitmapOld);
    DeleteDC(hBMDC);
    DeleteObject(hBitmap); EndPaint(hWnd, &ps);
    break;