MFC画图过程
- 打开vs选择创建新项目
- 搜索mfc并且点击mfc应用
- 设置文件路径(此处最好设置到D盘上),后点击创建
- 程序类型选择单个文档
- 以下全部选择下一步即可,直达最后选择完成
- 静静等待创建完成
- 点击项目后点击类向导
- 选择VIEW类名结尾的类,前面部分未项目名
- 点击消息,后搜索WM_P选择WM_PAINT,并且在点击添加处理程序,后点击OnePaint,后点击确定
- 接下来便会出现OnPaint程序
11.接下来在里面进行程序书写便可,书写完成后点击运行即可
示例代码如下:
CPaintDC dc(this); // device context for painting
// TODO: 在此处添加消息处理程序代码
// 不为绘图消息调用 CView::OnPaint()
//设置画笔数组
CPen pens[3];
pens[0].CreatePen(PS_SOLID, 1, RGB(255, 123,22));
pens[1].CreatePen(PS_DOT, 2, RGB(111, 32,33));
pens[2].CreatePen(PS_DASH, 3, RGB(23, 22, 145));
//设置画刷数组
CBrush brushs[3];
//设置纯色画刷
brushs[0].CreateSolidBrush(RGB(125,43,33));
//设置阴影画刷
brushs[1].CreateHatchBrush(HS_DIAGCROSS, RGB(22, 112, 255));
//设置位图画刷
CBitmap bitmap;
//加载位图资源
bitmap.LoadBitmap(IDB_PROPERTIES_HC);
//创建位图画刷
brushs[2].CreatePatternBrush(&bitmap);
srand((unsigned)time(NULL));
//进行图形绘制
for (int i = 7; i > 0; i--) {
//随机选取画笔
int random = rand() % 3;
dc.SelectObject(pens[random]);
//创建对应矩阵
CRect crect(400 - 20 * (i + 1), 400 - 20 * (i + 1), 400 + 20 * (i + 1), 400 + 20 * (i + 1));
//随机选取画刷
int random1 = rand() % 3;
dc.FillRect(crect, &brushs[random1]);
}
12.若要修改位图画刷,则可通过修改添加的位图,具体见其他博客,记得必须为bmp文件才可导入,可通过使用其原有图片标号,也可自己选择转格式(方法:画布打开另存为)。