MFC 对话框的矩形区域内画图
点一个按钮弹出一个对话框,想在对话框上一个固定大小的矩形区域内显示图像,图像就是给定半径和坐标的几个圆,数据是从后台读取的,要求图像按比例显示但不能超出矩形区域,如何获得...
点一个按钮弹出一个对话框,想在对话框上一个固定大小的矩形区域内显示图像,图像就是给定半径和坐标的几个圆,数据是从后台读取的,要求图像按比例显示但不能超出矩形区域,如何获得那个矩形区域的DC和规定它的大小?最好让对话框不能缩放,拖动图像也不会消失。(本人对MFC不熟,只是想用来画个图)
展开
2个回答
展开全部
对话框默认就是不能缩放的
一个DC都是和一个CWnd相对应的,所以说想获得对话框上面某一个矩形区域的DC不好办。
你可以这样,假设你知道那个矩形区域的左上角坐标是x,y,宽度是Width,高度是Height :
CDC* pDC=GetDC();
CDC mdc;
mdc.CreateCompatibleDC(pDC);//创建内存DC;
CBitmap bmp;
bmp.CreateCompatibleBitmap(pDC,Width,Height);
mdc.SelectObject(&bmp);
//然后开始在mdc上绘图
pDC->BitBlt(x,y,Width,Height,&mdc,0,0,SRCCOPY);//绘完之后拷贝到pDC上
一个DC都是和一个CWnd相对应的,所以说想获得对话框上面某一个矩形区域的DC不好办。
你可以这样,假设你知道那个矩形区域的左上角坐标是x,y,宽度是Width,高度是Height :
CDC* pDC=GetDC();
CDC mdc;
mdc.CreateCompatibleDC(pDC);//创建内存DC;
CBitmap bmp;
bmp.CreateCompatibleBitmap(pDC,Width,Height);
mdc.SelectObject(&bmp);
//然后开始在mdc上绘图
pDC->BitBlt(x,y,Width,Height,&mdc,0,0,SRCCOPY);//绘完之后拷贝到pDC上
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询