void CModelDlg::OnBnClickedOpen()
{
// TODO: 在此添加控件通知处理程序代码 

CFileDialog dlg(TRUE,NULL,NULL,OFN_FILEMUSTEXIST |OFN_HIDEREADONLY,_T("图片文件(*.bmp; *.jpg)|*.bmp; *.jpg|所有文件(*.*)|*.*||"),NULL);
    if(dlg.DoModal()==IDOK) 
     {  
     m_strFilePath=dlg.GetPathName();//获取路径,并显示在编辑框中     
        
 FileName=dlg.GetFileName();        
pWnd=GetDlgItem(IDC_OriginPic);
    CDC *pDC=pWnd->GetDC();//取得控件CDC句柄        //装载位图      
        CxImage  image1(FileName,GetTypeFromFileName((LPTSTR)(LPCSTR)m_strFilePath));
hbitmap=image1.MakeBitmap(0);

bitmap.Attach(hbitmap); //将载入的位图与bitmap关联起来         pWnd->GetClientRect(&rect);
        CDC   dcMem;   
        dcMem.CreateCompatibleDC(pDC); //创建与pDC兼容的设备上下文
        dcMem.SelectObject(&bitmap); //将位图对象选入设备上下文 
       
        bitmap.GetBitmap( &BM );
    
pDC->SetStretchBltMode(COLORONCOLOR);
pDC->StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0,BM.bmWidth,BM.bmHeight,SRCCOPY);
bitmap.Detach();        //分离关联的位图对 
        bitmap.DeleteObject();    
  
       }
   
  UpdateData(FALSE);

}
上面这个函数是点对话框上的打开按钮,将图片显示在静态文本控件IDC_OriginPic上
下面一步我要对图片做处理,在响应对话框上处理按钮的函数中进行了处理之后,我想再将处理的图片显示在另一个静态文本控件IDC_PROCESSPIC上
void CModelDlg::OnBnClickedProcess()
{
// TODO: 在此添加控件通知处理程序代码
SalientImage s;
CFileFind finder;
if(!finder.FindFile(FileName))
{
MessageBox("文件不存在!");
return;
}
if(s.FormCxImageObject(FileName)) //图像处理
{
if(s.FormResizeObject()) //图像处理  
{
  // MessageBox(FileName);
                                        //想要在处理完之后在此实现显示,该怎么做?
}
 
else 
  MessageBox("Resize fail!");

}
else 
MessageBox("FormBitmap fail!");
}高手帮帮忙吧
第一个函数中 创建了一个CxImage的对象image1.我想要再创建一个对象image2,如果下面还有第三个函数做处理,我想要在image2的基础上进行处理,就这个意思
该怎么实现啊?

解决方案 »

  1.   

    不是很明白你想要问的问题。
    1: 想要在处理完之后在此实现显示,该怎么做?  这个和image1的实现一样就可以了啊
    2:第一个函数中 创建了一个CxImage的对象image1.我想要再创建一个对象image2,如果下面还有第三个函数做处理,我想要在image2的基础上进行处理,就这个意思该怎么实现啊?  你想问什么?
      

  2.   

    ??不是很清楚你要做什么 看到迷迷糊糊的
    你前面那个函数中会显示后面的就不会了?
    兼容DC中处理好后 贴到那个控件上?
    dc.BitBlt();
      

  3.   

    把CxImage对象定义为CModelDlg类的成员变量,装载的时候调用Load函数。
      

  4.   

    我现在也在做这样的设计。楼主可以相互学习一下吗?
    [email protected]
    谢谢您。
      

  5.   

    不好意思啊,语言表达太差了就是要在处理完之后显示如果用上面的显示方法,就先要创建一个CxImage的对象 
    第一个传递的是文件名,可是如果后来要显示,应该显示的是处理完之后的,所以不能传递文件名了该怎么做啊?
    高手写个显示程序吧