怎样在画窗体的时候,贴上一张图片了BOOL gWinGL::CreateFalseGLWindow(char *title, int width, int height, int bits)
{
//--chenxidu 新建的假窗口
GLuint PixelFormat;
WNDCLASS wc;
DWORD dwExStyle;
DWORD dwStyle; RECT WindowRect;
WindowRect.left = (long)0;
WindowRect.right = (long)width;
WindowRect.top = (long)0;
WindowRect.bottom = (long)height; char *csnp = "FALSE_WINDOW"; // REGISTER CLASS
wc.style = CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS;
wc.lpfnWndProc = (WNDPROC) f_WndProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = m_hInstance;
wc.hIcon = LoadIcon(m_hInstance, MAKEINTRESOURCE(IDI_CLIENT));
wc.hCursor = LoadCursor(NULL, IDC_ARROW);
wc.hbrBackground = NULL;
wc.lpszMenuName = NULL;
wc.lpszClassName = csnp; if (!RegisterClass(&wc))
{
gUtil::ErrorMsg(TRUE, STR_(1009));
return FALSE;
} // CREATE PIXEL FORMAT
static PIXELFORMATDESCRIPTOR pfd =
{
sizeof(PIXELFORMATDESCRIPTOR),
1,
PFD_SUPPORT_OPENGL | PFD_DOUBLEBUFFER,
PFD_TYPE_RGBA, bits, 0, 0, 0, 0, 0, 0,
0, 0, 0,
0, 0, 0, 0,
16, 0, 0,
PFD_MAIN_PLANE,
0, 0, 0, 0
}; dwExStyle = 0;
dwStyle = WS_POPUP ; //TODO: add 2008-1-17 by lpp 调整窗口位置到中心
int cx = GetSystemMetrics(SM_CXSCREEN);    
int cy = GetSystemMetrics(SM_CYSCREEN);    
int wp = (cx-width)/2;
int hp = (cy-height)/2;
if (wp<0)
wp=0;
if (hp<0)
hp=0; if (!(m_fWnd = CreateWindowEx(dwExStyle, // | WS_EX_TOPMOST,
csnp, title, 
dwStyle | WS_CLIPSIBLINGS | WS_CLIPCHILDREN,
wp, hp, WindowRect.right - WindowRect.left, 
WindowRect.bottom - WindowRect.top, NULL, NULL, 
m_hInstance, NULL)))
{
return false;
} ShowWindow(m_fWnd,SW_SHOW);
ReSizeGLScene(width, height);
SetForegroundWindow(m_fWnd); SetWindowPos(m_fWnd,HWND_TOPMOST, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE); return TRUE;
   怎么在这里贴图了?

解决方案 »

  1.   

    写在窗口处理函数WM_CREATE下面吧。
      

  2.   

    CPaintDC dc(this); //对话框的dc
    CDC dcMem; 
    dcMem.CreateCompatibleDC(&dc);   //创建与对话框dc兼容的内存dc CRect rect;
    GetClientRect(&rect); BITMAP bitMap;
    m_bmpBackground.GetBitmap(&bitMap); CBitmap *pbmpOld=dcMem.SelectObject(&m_bmpBackground); //将背景位图选入内存dc中
    dc.StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0,bitMap.bmWidth,bitMap.bmHeight,SRCCOPY); 
    //画动态图
    CBitmap Bitmap,*pOldBitmap;
    CDC MemDC;
    Bitmap.LoadBitmap(IDB_BITMAP1);
    MemDC.CreateCompatibleDC(&dc);
    pOldBitmap=MemDC.SelectObject(&Bitmap);OnInitDialog里面加个 m_bmpBackground.LoadBitmap(IDB_BITMAPBACKGROUND);