什么原因导致滚动条出现模糊的现象?

模糊的滚动条 ,注意图片右上角,仔细看,是模糊的.
程序功能:
程序启动,创建内存dc, 选择一张图片,获取图片大小信息,采用双缓冲拷贝到窗口客户区域中。
同时设置滚动条, 因为有的图片可能会比客户区域大, 当然也有的可能会小于窗口客户区域.
当选择了一张小于客户区域的图片的时候,就会出现滚动条模糊,即我贴的图片。
以下是关键代码:
hBitmap=(HBITMAP)LoadImage(GetModuleHandle(NULL),ofn.lpstrFile,0,0,IMAGE_BITMAP,LR_LOADFROMFILE);
if(hBitmap==NULL)
{
::MessageBox(hWnd,_T("加载图片失败,可能是错误的bmp"),NULL,MB_ICONWARNING);
return 0;
}
ZeroMemory(&bitmap,sizeof(BITMAP));
GetObject(hBitmap,sizeof(BITMAP),&bitmap);
m_nHorzMaxSize=bitmap.bmWidth;
m_nVertMaxSize=bitmap.bmHeight;
m_nHorzPos=m_nVertPos=0;
//判断图片与客户区域的大小,分4种,高度多出,宽度多出,高、宽都多出,高宽都没有大于客户区域
RECT rect;
GetClientRect(hWnd,&rect);
if( (bitmap.bmHeight>rect.bottom) && (bitmap.bmWidth>rect.right))
uFlag=BOTH_ABOVE;
else if((bitmap.bmHeight<rect.bottom) && (bitmap.bmWidth>rect.right))
uFlag=ONLY_WIDTH_ABOVE;
else if((bitmap.bmHeight>rect.bottom) && (bitmap.bmWidth<rect.right))
uFlag=ONLY_HEIGHT_ABOVE;
else
uFlag=BOTH_BELOW;
//设置水平滚动条
SCROLLINFO si;
ZeroMemory(&si,sizeof(SCROLLINFO));
si.cbSize=sizeof(SCROLLINFO);
si.fMask=SIF_RANGE|SIF_PAGE;
si.nMax=m_nHorzMaxSize-1;
si.nMin=0;
si.nPage=m_nHorzPageSize;
SetScrollInfo(hWnd,SB_HORZ,&si,TRUE);
//设置垂直滚动条
ZeroMemory(&si,sizeof(SCROLLINFO));
si.cbSize=sizeof(SCROLLINFO);
si.fMask=SIF_RANGE|SIF_PAGE;
si.nMax=m_nVertMaxSize-1;
si.nMin=0;
si.nPage=m_nVertPageSize;
SetScrollInfo(hWnd,SB_VERT,&si,TRUE);
hOldBitmap=(HBITMAP)SelectObject(hMemDc,hBitmap);
DarwPic(hWnd, hMemDc,m_nHorzPos, m_nVertPos,bitmap,uFlag);
return 0;
以下链接是 整个源程序的源码:
http://pan.baidu.com/share/link?shareid=211351&uk=1913319109
...全文
相关推荐
怎样根据显示器模糊的现象来判断是何种原因引起.docx
除了上述提到的原因,还存在其他一些可能导致显示器模糊的因素。
CSS3 translate导致字体模糊的实例代码
"在CSS3中使用`translate`属性可能会导致字体出现模糊的现象,尤其是在将元素垂直居中时。此问题通常与`transform: translateY(-50%)`结合`top: 50%`用于
LCD液晶显示屏不良现象的原因分析
然而,LCD显示屏在生产、运输和使用过程中可能会遇到各种不良现象,影响其性能和外观。本文将对这些不良现象的原因进行分析,重点从电性和外观两个方面着手。首先,从电性方面来分析LCD不良现象的原因。
英语歧义和模糊现象阐释 (2013年)
"英语歧义和模糊现象阐释 (2013年) - 沈阳航空航天大学学报"本文探讨了英语中常见的两种语言不确定性现象:歧义和模糊,并着重分析了它们的产生原因、差异及在实际语言应用中的语用效果。作者刘媛媛
从顺应论视角看语用模糊现象 (2012年)
语用模糊现象在实际话语中的表现形式多样,可以是说话人使用模糊语言,也可以是听话人对话语的理解存在多种可能性。


