怎样在弹出的对话框中作图,急,在线等!

解决方案 »

  1.   

    得到窗体句柄, GetDC( hWnd ) ...
      

  2.   

    // 在窗体中绘制位图
    void  DRAW_WINDOW_BITMAP( HWND &hWnd, CString strPathName )
    {
    CBitmap * m_pBmp = NULL;
    BITMAP bm;
    CDC dcMem;
    CDC * pDC = NULL; if ( IsFileExist( strPathName ) == FALSE )
    {
    // 需绘制的位图文件不存在,直接退出
    return;
    } pDC = new CDC;
    HDC hDc = ::GetDC( hWnd );
    pDC = CDC::FromHandle( hDc );

    // 装载图片
    HBITMAP  hBitmap = (HBITMAP)::LoadImage ( AfxGetInstanceHandle(),   
                         strPathName, IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION |  
                         LR_LOADFROMFILE | LR_DEFAULTSIZE ); ASSERT( hBitmap );
    m_pBmp = new CBitmap();
    m_pBmp->Attach( hBitmap ); m_pBmp->GetObject( sizeof(bm), (LPVOID)&bm);
    dcMem.CreateCompatibleDC(pDC);
    CBitmap * pBmpOld = (CBitmap *)dcMem.SelectObject( m_pBmp );
    CRect rect;
    ::GetWindowRect( hWnd, rect ); // 将位图文件缩放绘制窗体中
    pDC->StretchBlt( 0, 0, rect.Width(), rect.Height(), &dcMem, 0, 0,
                              bm.bmWidth, bm.bmHeight, SRCCOPY ); dcMem.SelectObject (pBmpOld ); pDC = NULL;
    delete pDC;

    delete m_pBmp;
    m_pBmp = NULL;
    }
      

  3.   

    在对话框类中,映射WM_PAINT消息。
    在消息处理函数中,得到对话框的窗口指针pWnd,
    pWnd->GetDC(),
    以后你就可以在对话框上绘图了。
    如果你想在对话框的控件上绘图,可以通过GetDlgItem()得到控件的窗口指针,以下都是一样的了。
      

  4.   

    1先得到窗口句柄
    2由窗口句柄得到该窗口dc
    3得到dc了你想画什么都可以了
      

  5.   

    IT老板们赶快去http://www.yiyuyan.com/看看吧,那里有一样东西会使你们兴奋不已,有了它,你可以大量裁减那些高学历、高工资的程序员,转而雇佣更便宜的中学生来为你打工了。心动不如行动喔。:-)
      

  6.   

    可用这个函数:
    CClientDC *dc=new CClientDC(this)
    用dc再调用画图的函数;