一个关于图像处理的程序,我是在别人程序上加的代码。这个程序只用来打开BMP文件,有些BMP
文件打开正常,有些比如640*480的8位图像,就断言出错,在VIEWSCRL.CPP 文件,134行,具体代码如下
void CScrollView::OnPrepareDC(CDC* pDC, CPrintInfo* pInfo)
{
ASSERT_VALID(pDC);#ifdef _DEBUG
if (m_nMapMode == MM_NONE)
{
TRACE0("Error: must call SetScrollSizes() or SetScaleToFitSize()");
TRACE0("\tbefore painting scroll view.\n");
ASSERT(FALSE);//******断言出错
return;
}
应该是m_nMapMode == MM_NONE了,在网上有的人说初始化滚动条窗口的问题,我就奇怪为什么有的图片能打开的
?我的程序中相关代码如下
void CImgSegView::OnInitialUpdate()
{
CScrollView::OnInitialUpdate(); CSize sizeTotal;
CImgSegDoc* pDoc=GetDocument();
// TODO: calculate the total size of this view sizeTotal.cx=pDoc->m_lWidth;
sizeTotal.cy=pDoc->m_lHeight;
SetScrollSizes(MM_TEXT,sizeTotal);}