第一个MFC程序(基于VS 2017)

第一个 M F C MFC MFC程序(基于VS 2017)

一、新建 M F C MFC MFC项目

  1. 文件-》新建-》项目,选择 M F C MFC MFC应用,点击确认。

第一个MFC程序(基于VS 2017)_第1张图片

  1. 选择单个文档,其他不变,点击完成。

第一个MFC程序(基于VS 2017)_第2张图片

二、打开 M e n u Menu Menu窗口

  1. 视图-》其他窗口-》资源视图,或快捷键 C t r l + S h i f t + E Ctrl+Shift+E Ctrl+Shift+E

第一个MFC程序(基于VS 2017)_第3张图片

  1. 点击 M e n u Menu Menu文件下的 I D R _ M A L N F R A M E IDR\_MALNFRAME IDR_MALNFRAME

第一个MFC程序(基于VS 2017)_第4张图片

三、添加事件处理程序

  1. 新建绘图,在绘图下新建直线。

第一个MFC程序(基于VS 2017)_第5张图片
2. 单击右键直线,点击属性,更改ID为ID_LINE。

第一个MFC程序(基于VS 2017)_第6张图片
3. 单击右键直线,点击添加事件处理程序,选择 C M F C A p p l i c a t i o n 1 V i e w CMFCApplication1View CMFCApplication1View,点击确定。
第一个MFC程序(基于VS 2017)_第7张图片

四、编写实现代码

第一个MFC程序(基于VS 2017)_第8张图片

  1. 实现代码
void CMFCApplication1View::OnLine()
{
	// TODO: 在此添加命令处理程序代码
	CDC *pDC = GetDC();
	int x0 = 100, y0 = 100, x1 = 400, y1 = 300, c = RGB(0, 0, 0);
	float a, b, d1, d2, d, x, y;
	a = y0 - y1;
	b = x1 - x0;
	d = 2 * a + b;
	d1 = 2 * a;
	d2 = 2 * (a = b);
	x = x0;
	y = y0;
	pDC->SetPixel(x, y, c);
	while (x < x1) {
		if (d < 0) {
			x++;
			y++;
			d += d2;
		}
		else {
			x++;
			d += d1;
		}
		pDC->SetPixel(x, y, c);
	}
	ReleaseDC(pDC);
}
  1. 点击运行

第一个MFC程序(基于VS 2017)_第9张图片

五、开始绘画直线

第一个MFC程序(基于VS 2017)_第10张图片
点击绘图,然后点击直线。
第一个MFC程序(基于VS 2017)_第11张图片
直线生成完毕。

你可能感兴趣的:(计算机图形学)