要求:
使用点力菜单弹出对话框的功能实现直线的绘制,直线的起点终点坐标、线宽、RGB颜色值均需要通过对话框进行设置。
需要提交两个截图:弹出的对话框输入数据的截图和绘制的直线的截图。
编程环境:Visual Studio 2012
一、创建一个MFC工程
二、插入Dialog
1、资源视图—文件—Dialog
2、右击Dialog —插入Dialog
3、插入文本框
选中“Static Text”、“Edit Control”拖入即可
4、依次修改静态文本框属性
5、对话框空白处鼠标左键双击,填上类的名字。
6、为编辑文本框添加变量
右击文本框,选择“添加变量”
修改部分属性,并输入变量名
然后依次为其他文本框添加变量,变量名依次为 “x1”,“y1”,“x2”,“y2”,“R”,“G”,“B”,“xk”
(即使与上方变量名不同,也要记清楚,后续代码要使用)
三、新建菜单
1、资源视图—Menu—IDR_MFCApplication4TYPE
2、右侧键入“直线”,右击选择“添加事件处理程序”
如果底下没有子菜单,则将其属性中的POPUP改为false
3、消息类型为“COMMAND”,类列表选择“文件名+view”,点击“添加编辑”
(此处使用的别的项目的弹窗,正确的是“CMFCApplication4View”)
4、在“// TODO: 在此添加命令处理程序代码”处编辑代码
// TODO: 在此添加命令处理程序代码
dlg dlg1; //生成对话框对象
dlg1.DoModal();//显示对话框
CClientDC dc(this);//生成设备环境对象,获取设备环境
CPen newpen;
newpen.CreatePen(PS_SOLID,dlg1.xk,RGB(dlg1.R,dlg1.G,dlg1.B));//此处要与前面的变量名保持一致
dc.SelectObject(newpen);
dc.MoveTo(dlg1.x1,dlg1.y1);//定位到起点坐标
dc.LineTo(dlg1.x2,dlg1.y2);//从起点到终点画直线
5、导包#include “dlg.h”,注意导包位置如下图所示,位置错误可能代码不能运行
四、绘制图形
1、点击“本地Windows调试器”,生成程序运行界面
2、输入参数,点击确定
3、生成图形