利用VC6.0 MFC 建立基本对话框,设计个按钮,按下就读取一个JPEG图像 按钮的响应函数代码咋写呢?求求

来源:互联网 发布:c语言幻数 编辑:程序博客网 时间:2024/05/27 19:28
双击按钮,在里面加入下面代码: CClientDC dc(this); // COM 初始化 ::CoInitialize(NULL); HRESULT hr; CFile file("c:\\1.jpg", CFile::modeRead | CFile::shareDenyNone); DWORD dwSize = file.GetLength(); HGLOBAL hMem = ::GlobalAlloc( GMEM_MOVEABLE, dwSize ); LPVOID lpBuf = ::GlobalLock( hMem ); file.ReadHuge( lpBuf, dwSize ); file.Close(); ::GlobalUnlock( hMem ); IStream * pStream = NULL; IPicture * pPicture = NULL; // 由 HGLOBAL 得到 IStream,参数 TRUE 表示释放 IStream 的同时,释放内存 hr = ::CreateStreamOnHGlobal(hMem, TRUE, &pStream ); ASSERT ( SUCCEEDED(hr) ); hr = ::OleLoadPicture( pStream, dwSize, TRUE, IID_IPicture, ( LPVOID *)&pPicture ); ASSERT(hr == S_OK); long nWidth,nHeight; pPicture->get_Width( &nWidth );   // 宽 pPicture->get_Height( &nHeight ); // 高  CSize sz( nWidth, nHeight );  dc.HIMETRICtoDP( &sz ); pPicture->Render(dc.m_hDC,0,0,sz.cx,sz.cy,0,nHeight,nWidth,-nHeight,NULL); if ( pPicture ) pPicture->Release(); if ( pStream )  pStream->Release();  ::CoUninitialize();


问题:显示完这个图像后,立刻就没有了对话框。。。

原创粉丝点击