毕设中遇到的问题

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

 #ifndef x //先测试x是否被宏定义过
 #define x 程序段1 //如果x没有被宏定义过,定义x,并编译程序段1 void MedianValue(BYTE*image_in,BYTE*image_out,int xsize,int ysize,int filterH,int filterW,int filterMX,int filterMY)

{int i,j,k,l,m,Value[5];
for(i=filterMY;i{for(j=filterMY;jfor(k=0;k{for(l=0;l{
m=*(image_in+xsize*(ysize-1-i+filterMY-k)+j-filterMX+1);
Value[k*filterW+1]=m;
}
}//获取中值
*(image_out+(ysize-1-i)*xsize+j)=(BYTE)MedianValue(Value,filterH*filterW);
}
// TODO: Add your command handler code here
CDemo1Doc *pDoc=GetDocument();
ImageDib *pDib=pDoc->m_dib;

if(pDib->m_nBitCount!=8){
::MessageBox(0,"只处理灰度图像",MB_OK,0);
return ;
}
pDib->m_nBitCount=24//图像为彩色图像
pDib->m_nBitCount!=8//图像为灰度图像



//新建视图,显示处理结果
CMainFrame* pFrame = (CMainFrame *)(AfxGetApp()->m_pMainWnd);
pFrame->SendMessage(WM_COMMAND, ID_FILE_NEW);
CDemo1View* pView=(CDemo1View*)pFrame->MDIGetActive()->GetActiveView();
CDemo1Doc* pDocNew=pView->GetDocument();
ImageDib *dibNew=pDocNew->m_dib;
dibNew->ReplaceDib(segment.GetDimensions (),segment.m_nBitCountOut,segment.m_lpColorTableOut, segment.m_pImgDataOut);
pView->OnInitialUpdate();
pDocNew->SetModifiedFlag(TRUE);
pDocNew->UpdateAllViews(pView);
Invalidate();




char str[20];
sprintf( str, "%d %d %d\n", i, j, *(pDib->m_pImgData+i*lineByte+j));
AfxMessageBox(str);










以下程序为什么不能加到系统中?每行像素所占字节数,必须扩展成4的倍数

CString str1,str2;
Ctime time=CTime::GetCurrentTime();
str1=time.Format("%H;%M;%S,%A,%B,%Y");
str2="当前系统时间是:"+stri;
AfxMessageBox(str2);

AfxGetApp( )是全局的。
AfxGetApp( )这个函数可以得到当前应用进程的指针,是CWinApp*类型的,通过这个指针可以访问到这个进程中的对象。

afxgetapp -- 取应用程序实例指针
getmainwnd -- 取主窗口对象指针

相关文档
最新文档